Horst M. Posted October 16, 2011 Share Posted October 16, 2011 (edited) Hi, I've the Problem that Groups can't be switched from Screen Plane to Layer plane I'm working with some Template FIles from our Venue that are created with Versions before Layerplane was introduced, and almost every Symbol contains Groups. there are a whole lot of them. Is there a way to convert these Symbols to accept LayerPlane without editing every Symbol and search for Groups? Horst M. Edited October 16, 2011 by Horst M. Quote Link to comment
mike m oz Posted October 16, 2011 Share Posted October 16, 2011 You could try Petri's Plane Mode script (available at VectorDepot): http://www.vectordepot.com/plug-ins/ Quote Link to comment
Horst M. Posted October 16, 2011 Author Share Posted October 16, 2011 Juhuu! That did it! Thanks a lot Petri! and thanks mike for the tip. Horst M. Quote Link to comment
Horst M. Posted October 29, 2014 Author Share Posted October 29, 2014 (edited) Hallo to all. As far as I see the "switch to Screen Plane" and "Switch to Layer Plane" Scripts seem to be broken for VW 2015 http://www.vectordepot.com/plug-ins/ It seems to be the case, that they don't convert the content of Symbols anymore. Anybody else seeing this? Regards Horst M. Edited October 29, 2014 by Horst M. Quote Link to comment
Christiaan Posted October 29, 2014 Share Posted October 29, 2014 Yeah I had noticed this too: https://techboard.vectorworks.net/ubbthreads.php?ubb=showflat&Number=203535#Post203535 Quote Link to comment
Horst M. Posted October 31, 2014 Author Share Posted October 31, 2014 (edited) Hallo, I had Contact with the Author of the Scripts. Here is his response: The scripts work in 2014 and earlier, but not in 2015. According to the VS documentation (http://developer.vectorworks.net/index.php/VS:Function_Reference_Appendix#miscpref), the relevant object variable (1160) has not been changed, so there is no explanation and no fix that I can implement. If you wish, you have my permission to post the scripts there as there is no secret code in them. Someone might know what is going on. PROCEDURE Objs2LayerPlane; { © Petri Sakkinen 2010 } PROCEDURE DoIt (h : HANDLE); BEGIN SETOBJECTVARIABLEBOOLEAN(h, 1160, FALSE); END; BEGIN FOREACHOBJECT(DoIt, ALL); END; RUN(Objs2LayerPlane); PROCEDURE Objs2ScreenPlane; { © Petri Sakkinen 2010 } PROCEDURE DoIt (h : HANDLE); BEGIN SETOBJECTVARIABLEBOOLEAN(h, 1160, TRUE); END; BEGIN FOREACHOBJECT(DoIt, ALL); END; RUN(Objs2ScreenPlane); Best regards, It would be nice if someone from NEM could have look, as it seems to bee some confilct inside of VW. Regards Edited October 31, 2014 by Horst M. Quote Link to comment
Pat Stanford Posted November 4, 2014 Share Posted November 4, 2014 Petri's scripts do seem to work, but at least inside symbols the symbol definition does not update until you edit the symbol. In fact the first time you edit the symbol you won't be able to access the modified objects. Just edit and exit the symbol and you should be OK. If you need to make other changes, just edit it again and all should be well. Inside symbols now does not offer the Layer Plane option. You now can set the objects inside symbols to Screen Plane, Symbol Definition or Working Plane. Horst, can you please get this information to Petri since I don't think he follows here any more. Pat Quote Link to comment
Pat Stanford Posted November 6, 2014 Share Posted November 6, 2014 Ray Mullin has helped work out a workaround for the scripts. The problem appears to be the order that the "geometry" and "symbol header" get reset. If you manually reset the geometry before the header then all is OK. If done in the other order, then you get the weird results. Revised code for the two scripts follows: PROCEDURE Objs2LayerPlane; { © Petri Sakkinen 2010 } {Modifed 2014, Ray Mullin, Pat Stanford to work with VW2015} Procedure DoIt (H : Handle); Begin SetObjectVariableBoolean(H, 1160, FALSE); End; Function ResetDef(H :Handle) :Boolean; Begin ResetObject(H); End; BEGIN FOREACHOBJECT(DoIt, INSYMBOL & ALL); ForEachObjectinList(ResetDef, 0, 0, FSymDef); Sysbeep; END; RUN(Objs2LayerPlane); PROCEDURE Objs2ScreenPlane; { © Petri Sakkinen 2010 } {Modifed 2014, Ray Mullin, Pat Stanford to work with VW2015} Procedure DoIt (H : Handle); Begin SetObjectVariableBoolean(H, 1160, TRUE); End; Function ResetDef(H :Handle) :Boolean; Begin ResetObject(H); End; BEGIN ForEachObject(DoIt, INSYMBOL); ForEachObjectinList(ResetDef, 0, 0, FSymDef); ForEachObject(DoIt, ALL); Sysbeep; END; RUN(Objs2ScreenPlane); Quote Link to comment
Pi_ Posted November 14, 2014 Share Posted November 14, 2014 I have the same problem in VW2015 with my PIO's who use this line of code. All PIO worked fine in VW2014 (SetObjectVariableBoolean(H, 1160, FALSE) one PIO was a label that we put in walls, when layerlevel is not 0, PIO crashes on this line of code (that sets the PIO itself to the layerplane) another PIO use an "extrudeAlongPath" I used to set the profile of the extrusion to the layerplane. In VW2015 it crashes (sometimes,...) SetObjectVariableBoolean (polyh, 1160, False); extrudeh:=ExtrudeAlongPath(ash,polyh); its seems a bug to me... Quote Link to comment
AlanW Posted December 5, 2014 Share Posted December 5, 2014 Pat Thanks the first script worked a treat in 2015. The second script made no difference. Thank you very much. Quote Link to comment
Boh Posted December 18, 2019 Share Posted December 18, 2019 These are handy little scripts. The only thing is they seem to operate on every object in a file correct?. It would be nice if they could be used on the current selection... Cheers 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.