Author Topic: [XDrX-PlugIn(76)] Arc to polyline  (Read 315 times)

0 Members and 1 Guest are viewing this topic.

xdcad

  • Swamp Rat
  • Posts: 514
[XDrX-PlugIn(76)] Arc to polyline
« on: January 03, 2024, 10:38:21 PM »
GIS software does not have arcs and requires polyline fitting

Code: [Select]
(defun c:xdtb_arc2pl (/ ss x pts pl)
  (xdrx-begin)
  (if (not #xd-var-global-xiangaodist)
    (setq #xd-var-global-xiangaodist (/ (xd::doc:getpickboxheight) 3.0))
  )
  (if (setq
tol (getreal (xdrx-prompt
       (xdrx-string-formatex
(xdrx-string-multilanguage
   "\n输入玄高距<%.2f>"
   "\nEnter the chord height distance<%.2f>"
)
#xd-var-global-xiangaodist
       )
       t
     )
    )
      )
    (setq #xd-var-global-xiangaodist tol)
  )
  (if (setq ss (xdrx-ssget
(xdrx-string-multilanguage
   "\n选择弧线段<退出>:"
   "\nSelect arc segment<Exit>:"
)
'((0 . "circle,arc,*polyline,ellipse"))
       )
      )
    (progn
      (mapcar '(lambda (x)
(setq pts (xdrx-curve-getsamplepoints
     x
     #xd-var-global-xiangaodist
   )
)
(setq pl (xdrx-polyline-make pts))
(if (xdrx-curve-isclosed x)
   (xdrx-curve-setclosed pl)
)
(xdrx-entity-matchprop x pl)
(xdrx-object-swapid x pl)
(xdrx-entity-delete pl)
       )
      (xdrx-ss->ents ss)
      )
    )
  )
  (xdrx-end)
  (princ)
)
The code I wrote uses XDRX-API,which can be downloaded from github.com and is updated at any time.
===================================
https://github.com/xdcad
https://sourceforge.net/projects/xdrx-api-zip/
http://bbs.xdcad.net