elevation lisp

Does anyone have a lisp routing to put all drawings that are on different planes on the same plane. I have a drawing where there are multiple part drawings and they are all on different planes. I need something that will set the elevation I believe on all planes to 0.

Reply to
Chris
Loading thread data ...

I know there are a few out there that work, some that are half assed.. you can do the following at the command prompt quite effectively:

change P for properties E for elev 0 voila!

Reply to
longshot

"longshot" wrote in news:2n62g.145$E41.41@trnddc03:

the change command won't work because the verticies of the individual polylines are on different planes. Everywhere there is a point connecting lines those verticies are on different planes.

Reply to
Chris

If you have Express Tools, try the FLATTEN command. If not, do a Google search for one of the many third-party Flatten routines. ___

Reply to
Paul Turvill

Chris a écrit :

Hello, The command is *proj2d_all

*PowerClic have to be installed to make it work sorry comment and message are in french.

I experienced problem with the expresstools command *flatten*, especially for blocks with attribs.

There is another way, that don't work with inserts : _move basepoint @0,0,10E99 _move basepoint @0,0,-10E99

when the z coordinate exceed 10E99, nothing works, except saving file into dxf , and then edit it !

*//*/* */*/;****************************************************************************************/* */;/**/;§/dxf/definit/**/ /**/tous/**/ /**/les/**/ /**/cordonées/**/ /**/en/**/ /**/z/**/ /**/à/**/ /**/0/none/* */;/**/;ne/**/ /**/permet/**/ /**/pas/**/ /**/de/**/ /**/choisir/**/ /**/les/**/ /**/entitées,/**/ /**/mais/**/ /**/traite/**/ /**/toutes/**/ /**/les/**/ /**/entitées,/**/ /**/3dpoly/**/ /**/incluses/* */;/* (*defun* c:proj2d_all ( / z)

(*defun* to_Z0 ( ent / tmp eg) (*setq* eg (*entget* ent))

(*if* (*setq* z (cadddr (*setq* tmp (*assoc* *10* eg)))) (*if* (*not* (= *0* z)) (*progn* (*setq* repl (*list* *10* (cadr tmp) (caddr tmp) *0*)) (*setq* eg (*subst* repl tmp eg)) (*entmod* eg)

*/;/**/(print/**/ /**/eg)/* (*entupd* ent) ) ) )

(*if* (*setq* z (cadddr (*setq* tmp (*assoc* *11* eg)))) (*if* (*not* (= *0* z)) (*progn* (*setq* repl (*list* *11* (cadr tmp) (caddr tmp) *0*)) (*setq* eg (*subst* repl tmp eg)) (*entmod* eg)

*/;/**/(print/**/ /**/eg)/* (*entupd* ent) ) ) )

(*if* (*setq* z (cadddr (*setq* tmp (*assoc* *12* eg)))) (*if* (*not* (= *0* z)) (*progn* (*setq* repl (*list* *12* (cadr tmp) (caddr tmp) *0*)) (*setq* eg (*subst* repl tmp eg)) (*entmod* eg)

*/;/**/(print/**/ /**/eg)/* (*entupd* ent) ) ) )

(*if* (*setq* z (cadddr (*setq* tmp (*assoc* *13* eg)))) (*if* (*not* (= *0* z)) (*progn* (*setq* repl (*list* *13* (cadr tmp) (caddr tmp) *0*)) (*setq* eg (*subst* repl tmp eg)) (*entmod* eg)

*/;/**/(print/**/ /**/eg)/* (*entupd* ent) ) ) )

(*if* (*setq* z (*cdr* (*setq* tmp (*assoc* *38* eg)))) (*if* (*not* (= *0* z)) (*progn* (*setq* repl (*cons* *38* *0*)) (*setq* eg (*subst* repl tmp eg)) (*entmod* eg)

*/;/**/(print/**/ /**/eg)/* (*entupd* ent) ) ) ) )

(*setq* ent (*entnext*)) (to_Z0 ent)

*/;/**/(print/**/ /**/eg)/* (*while* (*setq* ent (*entnext* ent)) (to_Z0 ent) */;/**/(print/**/ /**/eg)/* ) */;/**/;aplati/**/ /**/les/**/ /**/blocs/* (c:block_def_to_z0) ) */;/**/;/**/ /**/****************************************************************************/* */;/**/;§/dxf/aplati/**/ /**/la/**/ /**/definition/**/ /**/de/**/ /**/tous/**/ /**/les/**/ /**/blocs/**/ /**/du/**/ /**/dessin/**/ /**//none/* (*defun* c:block_def_to_z0 ( / lbloc nbl)

(*setq* lbloc (pw_list_tabl *"**BLOCK"*)) (*setq* lxref (PW_LIST_XREF))

(*setq* lbloc (pw_l1-l2 lbloc lxref))

(*foreach* nbl lbloc

(*prompt* *"**\napplati** **la** **definition** **du** **bloc** **..."*) (*print* nbl) (block_def_z0 nbl) ) )

*/;/**/ /**/****************************************************************************/* */;/**/;§/dxf/applati/**/ /**/la/**/ /**/definition/**/ /**/d'un/**/ /**/bloc/**/ /**//nombloc/* */;/**/;nombloc/**/ /**/=/**/ /**/intitulé/**/ /**/du/**/ /**/bloc/* */;/**/;/* (*defun* block_def_z0 ( nb / i ldef ) (*setq* ldef (pw_block_def nb)) (*foreach* def ldef (*setq* def (*mapcar* 'pw_zfromlist_to_zero def)) (*prompt* *"**\nmodify** **1"*) (*print* (*entmod* def)) ) )
Reply to
gegematic

not seeing the file you're in makes me ask a silly question.

if the previous draftsman was using ELEVATION to separate his drawing rather than layers you might also be dealing with blocks. seems like xrefs might be handled the same way for this purpose.

but just to remind you, if the insertion point of a block is already in the zero plane and the entities IN THE BLOCK are not you need to do something more than change the elevation of the block to zero.

otherwise, good luck. I hate working in other peoples' drawings when other peoples' standards suck. worse when "other people" is the government, and they are trying to make a career out of a set of plans......

cheers

Reply to
roy

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.