Jump to content

Recommended Posts

Posted

I'm trying to write a VBA code that searches in a general drawing all lines that have a specific length and slope. Then, every time it finds that line in the drawing, it will write next to a specific text, for example "line". Do you think it's possibile? Any idea? Thanks

Posted

In principle what you want to do is perfectly possible.

 

You search the current drawing filtering on lines to create a selection set. Then loop through the selection set and write your text at your desired position.

Posted

As VBA

 

Dim FilterDXFCode(0) As Integer
Dim FilterDXFVal(0) As Variant

FilterDXFCode(0) = 0
FilterDXFVal(0) = "LINE"


Set SS = ThisDrawing.SelectionSets.Add("Linelens")
SS.Select acSelectionSetAll, , , FilterDXFCode, FilterDXFVal
For Cntr = 0 To SS.Count - 1

'now get the length etc and do something

As lisp

(setq ss (ssget (list (cons 0 "Line"))))
(repeat (setq x (sslength ss))
(setq obj (vlax-ename->vla-object (ssname  ss (setq x (- x 1)))))
(vla-get-length obj)
(princ "\n")
)

Posted
Do you think it's possibile?

Can.

Write all the requirements, and attach an example.

Posted

Thank you all! It works...!

Posted

What worked ? You dont have to post the code just how, others may want the same answer.

Posted

I used your idea Bigal, vba

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
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...