home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BUG 11
/
BUGCD1998_02.ISO
/
aplic
/
turbocad
/
tcw.z
/
Expoint.bas
< prev
next >
Wrap
BASIC Source File
|
1997-05-05
|
2KB
|
71 lines
' This sample program is an example of how to do custom file IO from
' TurboCAD. All vertices of selected graphics are output to a table
'
' Author : Mike Cartwright, Tamara Cartwright (updated to TurboCAD 4.0 interface)
' Date : 01/08/96, 3/8/97
'
'Constants
Global Const GK_GRAPHIC = 11
Global Const NULL = 0
Sub Main ()
Dim FileName As String
Dim myLine As String
Dim g As Long
Dim v As Long
Dim vi As Long
Dim vCount As Long
Dim gCount As Long
Dim i As Long
Dim fh As Long
Dim dActive As Long
' Check for valid drawing
dActive = TCWDrawingActive ()
If dActive = NULL Then
MsgBox "Program requires active drawing. Open any drawing and try again."
' Terminate the program
Stop
End If
' Get the name of the output file.
FileName = InputBox("Type in the filename to export to")
If FileName <> "" Then
gCount = TCWSelectionCount()
If (gCount = 0) Then
MsgBox "Need to have at least one graphic selected"
Stop
End If
' Open the output text file.
fh = TCWOpenOutput(FileName)
' Walk through the selected graphics and pick only
' GK_GRAPHICS.
for i = 0 to gCount - 1
g = TCWSelectionAt(i)
if TCWGraphicPropertyGet(g, "Kind") = GK_GRAPHIC Then
if vi > 0 then
' Place a blank line after the previous graphic
TCWWriteOutput fh, ""
End If
vCount = TCWVertexCount(g)
' Iterate through the vertices of the graphic g.
for vi = 0 to vCount - 1
v = TCWVertexAt(g, vi)
' Write the coordinates of vertex v into the string Line.
' The delimeter for numeric fields is chr(9) character.
myLine = Str$(vi) & chr$(9) & Str$(TCWGetX(v)) & chr$(9) & _
Str$(TCWGetY(v)) & chr$(9) & Str$(TCWGetZ(v))
TCWWriteOutput fh, myLine
next vi
End If
next i
TCWCloseOutput fh
End If
End Sub