Jump to content

Alignment of object with underlay xref drawing.

Recommended Posts

Hello Everyone,


I am trying to align simple objects (line circles, etc) and blocks to lines that exist in a xref'd file.


An example is if I have a general arrangement floor plan (that has been produced and owned by others in my team). I would like to create a set of dynamic drawings that would change with changes to the general arrangement drawing. I understand that the original author can add, delete and redraw lines that I have aligned to, however I will address these as they occur.

Link to comment
Share on other sites

Not sure what you're asking. You can use the object snap function to connect a point in your drawing to, say, an endpoint in the xref. Once you use the snap, however, the information is gone. The point doesn't move again if the endpoint you snapped to moves later.


A constraint might work if the base point were in the same drawing. According to this AUGI page, you can only constrain something with the insertion point of the xref, not anything in it.

Link to comment
Share on other sites

To further explain, an example is if I have a floor plan of a rectangular building (say 20 x 10m) which my colleague is working on. I attach their drawing as a xref into my drawing. I want to trace their outline and then use parametric constraints to lock the lines to their lines. I salon want to add a dotted line 600mm to the inside  to show slab thickness change and then again using dimensional constraints to lock the distance. 


If my colleague change the building to 20m x 12m by stretching the floor plan. I would like my drawing to updated accordingly.

Link to comment
Share on other sites

Thinking a bit more if dashed pline is on a layer could find pline and do a new  bpoly offset and recreate lots in one go. This is make dashed. You need to set layer etc.


(defun c:dash600 ( / ent1)
(while (setq pt (getpoint "\nPick point inside shape Enter to exit"))
(command "bpoly" pt "")
(setq ent1 (entlast))
(command "offset" 600 ent1 "" pt "")
(command "erase" ent1 "")


This is redo oh that is your home work. Have a go. (defun redodash600.......


A helpful hint this is a internal point based on a object such as  pline.


(setq pt (osnap (vlax-curve-getStartPoint obj) "gcen"))



Edited by BIGAL
Link to comment
Share on other sites

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.

Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Create New...