Mbuck Posted February 10, 2002 Share Posted February 10, 2002 There is a way, obviously, to import a text file containing 3d survey data points into Vectworks and this 3d data is then converted automatically to stake objects, which is great. However, if 3d loci where created in Vectorworks is there a way to export 3d loci/data to a text file so that it can be then re-imported to automatically create the stake objects. Obviously placing stake objects manually is a laborious and time-consuming task and should not be necessary. Is there a simple way to do this? Quote Link to comment
RLKHydro Posted February 13, 2002 Share Posted February 13, 2002 No, that we've been able to determine there is no way to export a data file in the new program. The only way we've been able to accomplish this is to do a "select all" and open a new drawing in VW8, set the units and paste in place. They likely won't land on your drawing, mine never do but none the less now you have your points in a place where they can be exported as a point file using the export vectorscript. Then you should be able to reimport them into Landmark. This is absolutely unacceptable, perhaps Vectorworks would be willing to provide an extra version8 disk for new customers. Anyway, here is a copy of the vectorscript. Be warned, we've only been able to get this to work in the old version. {The script begins below, this is a comment line} procedure coord; var x,y,z,ox,oy:real; i:integer; obj:handle; ofile:string; begin getorigin(ox,oy); obj:=factlayer; PutFile('Output file', ' ', ofile); write('X'); tab(1); write('Y'); tab(1); writeln('Z'); while obj<>NIL do begin i:=GetType(obj); if (i=9) then begin GetLocus3D(obj,x,y,z); x:=x-ox; y:=y-oy; write(x); tab(1); write(y); tab(1); writeln(z); end; obj:=nextobj(obj); end; close(ofile); end; run(coord); {This comment line ends the script} Good luckValerie Quote Link to comment
Robert Anderson Posted February 13, 2002 Share Posted February 13, 2002 Here's a simple script that converts 3D loci to stakes in place. Even easier than exporting/importing. Cut and paste this into your document as a document script, or just save this script as a text file, and use Import VectorScript to run it: {==========BEGIN VECTORSCRIPT=========}PROCEDURE ConvertLoci2Stakes;VAR DeleteLoci:BOOLEAN; LName:STRING; PROCEDURE DrawStakeAt3dLocus(h:HANDLE);VAR x,y,z:REAL; Hstake:HANDLE; BEGIN Get3DCntr(h,x,y,z); Hstake:= createcustomobject('Stake Object',x,y,0.0); Move3DObj(Hstake,0.0,0.0,z); END; BEGINLName := GetLName(actlayer);DeleteLoci :=YNDialog('Do you wish to delete the source loci?');ForEachObject(DrawStakeAt3dLocus,((L = LName) AND (t = Locus3D)));IF DeleteLoci THEN ForEachObject(DelObject,((L = LName) AND (t = Locus3D)));END;RUN(ConvertLoci2Stakes); {===========END VECTORSCRIPT==========} Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.