rustysilo Posted January 22, 2009 Posted January 22, 2009 Is there a way to dview > twist your view by clicking points as opposed to entering an angle? When you initiate dview > twist objects turn off and any objects you select as the dview block rotate as such you can't select points on the objects... Quote
lpseifert Posted January 22, 2009 Posted January 22, 2009 Instead of Dview, try UCS . If you use UCS > Z, you can specify the angle (or pick on screen); UCS > OB (or E) you can specify an entity to align to; UCS > V will align to current view. Quote
rustysilo Posted January 22, 2009 Author Posted January 22, 2009 Does that mean the answer is NO? I'm looking for a dview > twist that behaves more like the one in Microstation. The answer you gave doesn't really twist the view right, just the ucs? Quote
lpseifert Posted January 22, 2009 Posted January 22, 2009 Yes, that means no. Try the Plan command after UCS. Quote
MaxwellEdison Posted January 22, 2009 Posted January 22, 2009 Try using PLAN afterwards and set view to Current. Or combine the two into macros to rotate the view turnwise and widdershins. Quote
smorales02 Posted January 22, 2009 Posted January 22, 2009 So you are wanting to twist the view of your drawing by selecting two points? Quote
rustysilo Posted January 22, 2009 Author Posted January 22, 2009 Si. I want to dview > twist by selecting two points instead of entering an angle. The UCS deal will do I reckon. Maybe I'll work up the macro for it. Quote
rustysilo Posted January 22, 2009 Author Posted January 22, 2009 What I don't like with that is when I do plan > c (for current ucs) it zooms to extents. If I do a zoom previous if reverts back to the previous ucs setting. Is there a way to zoom previous and keep the ucs via a regular macro or will that require programming? Quote
smorales02 Posted January 22, 2009 Posted January 22, 2009 this might work for you (defun rtd (a) (/ (* a 180.0)pi)) (defun dtr (a) (* pi (/ a 180.0))) (DEFUN C:TW(/ W2 W1 ANG) (PRINC"\nSelect two point along the desired horizontal line. ") (SETVAR"OSMODE"512)(IF(SETQ W2(GETPOINT"\nFirst point (left): ")) (PROGN(INITGET 1)(SETQ W1(GETPOINT"\nSecond point: "W2)ANG(ANGLE W2 W1)) (COMMAND"DVIEW""L" "" "TW"(- 360(RTD ANG))"")(SETVAR"SNAPANG"ANG))) (SETVAR"OSMODE"0)) Quote
rustysilo Posted January 22, 2009 Author Posted January 22, 2009 Exactly what I wanted! Thank you so much my friend! Please come by for a drink sometime. Quote
rustysilo Posted January 27, 2009 Author Posted January 27, 2009 this might work for you (defun rtd (a) (/ (* a 180.0)pi)) (defun dtr (a) (* pi (/ a 180.0))) (DEFUN C:TW(/ W2 W1 ANG) (PRINC"\nSelect two point along the desired horizontal line. ") (SETVAR"OSMODE"512)(IF(SETQ W2(GETPOINT"\nFirst point (left): ")) (PROGN(INITGET 1)(SETQ W1(GETPOINT"\nSecond point: "W2)ANG(ANGLE W2 W1)) (COMMAND"DVIEW""L" "" "TW"(- 360(RTD ANG))"")(SETVAR"SNAPANG"ANG))) (SETVAR"OSMODE"0)) What are the different osmode variables? I would like to change it, but not sure what to set it to. How do I figure that out? Quote
smorales02 Posted January 27, 2009 Posted January 27, 2009 Each OSNAP has a numerical value associated to it. 512 being NEAREST...if you want to change it use one of the other numbers... 0 NONe 1 ENDpoint 2 MIDpoint 4 CENter 8 NODe 16 QUAdrant 32 INTersection 64 INSertion 128 PERpendicular 256 TANgent 512 NEArest 1024 QUIck 2048 APParent Intersection 4096 EXTension 8192 PARallel If you want more than one to be active than just use the sum of the numbers Quote
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.