明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4352|回复: 17

[基础] 汇报汇报学习情况,画梁

[复制链接]
发表于 2014-6-12 16:54:56 | 显示全部楼层 |阅读模式
本帖最后由 叶曲冰寒 于 2014-6-12 17:03 编辑
  1. (defun c:tt()
  2.   
  3.   (setq st 1)
  4.   (setq pt1 (getpoint))
  5.   (setq pt2 pt1)
  6.   (setq newline1 (hel_Line pt1 pt2))
  7.   (setq newline  (hel_Line pt1 pt2))
  8.   (setq newline2 (hel_Line pt1 pt2))
  9.   (vlax-put-property newline 'Color 1)
  10.   (vlax-put-property newline1 'Color 2)
  11.   (vlax-put-property newline2 'Color 2)
  12.   (vlax-put-property newline 'LineType "dash")
  13.   (while st
  14.     (setq get (grread 1))
  15.     (if (= (hel_n1h get) 5)
  16.       (progn
  17.   (setq pt2 (hel_n2h get))
  18.         (setq rad (+ (angle pt1 pt2) (/ pi 2)))
  19.         (setq pt11 (polar pt1 rad -100))
  20.         (setq pt12 (polar pt2 rad -100))
  21.         (setq pt21 (polar pt1 rad 100))
  22.         (setq pt22 (polar pt2 rad 100))
  23.   (vlax-put-property newline 'EndPoint (vlax-3d-point pt2))
  24.   (Vlax-Put-Property newline1 'EndPoint (Vlax-3d-Point pt12) )
  25.   (Vlax-Put-Property newline1 'StartPoint (Vlax-3d-Point pt11) )
  26.   (Vlax-Put-Property newline2 'EndPoint (Vlax-3d-Point pt22) )
  27.   (Vlax-Put-Property newline2 'StartPoint (Vlax-3d-Point pt21) )
  28.       )
  29.       (setq st nil)
  30.     )
  31.   )

  32. )

该贴已经同步到 叶曲冰寒的微博

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x

评分

参与人数 2明经币 +2 收起 理由
edata + 1 很好。。。。
ll_j + 1 鼓励一下

查看全部评分

发表于 2014-6-12 18:42:48 | 显示全部楼层
缺少hel_Line
发表于 2014-6-12 19:33:52 | 显示全部楼层
支持一下源码!
 楼主| 发表于 2014-6-12 20:33:59 | 显示全部楼层
hao3ren 发表于 2014-6-12 18:42
缺少hel_Line

;;;由两点画一条直线
(defun hel_Line(spt ept)
  (Vlax-Invoke-Method (Vlax-Get (Vlax-Get (Vlax-Get-Acad-Object) 'ActiveDocument) 'ModelSpace) 'AddLine (Vlax-3d-Point spt) (Vlax-3d-Point ept))
)
 楼主| 发表于 2014-6-12 20:34:55 | 显示全部楼层
cnks 发表于 2014-6-12 19:33
支持一下源码!

长老好!
发表于 2014-6-12 21:19:50 | 显示全部楼层
不错,不错,
发表于 2014-6-12 21:35:49 | 显示全部楼层
本帖最后由 xyp1964 于 2014-6-12 21:58 编辑

瞎叫好:缺少hel_n1h及hel_n2h
hel_n1h = car
hel_n2h = cadr

发表于 2014-6-12 21:48:53 | 显示全部楼层
实际工作中不会这样画梁的哦
发表于 2014-6-12 22:01:34 | 显示全部楼层
;; 凑个热闹
  1. (defun c:tt (/ pt1 l0 l1 l2 st gr pt2 rad pt11 pt12 pt21 pt22)
  2.   (defun line (p1 p2); 两点画直线
  3.     (entmake (list '(0 . "LINE") (cons 10 p1) (cons 11 p2)))
  4.     (entlast)
  5.   )
  6.   (setq pt1 (getpoint)
  7.         l0  (line pt1 pt1)
  8.         l1  (line pt1 pt1)
  9.         l2  (line pt1 pt1)
  10.         st  t
  11.   )
  12.   (xyp-SubUpd l0 62 1)
  13.   (xyp-SubUpd l0 6 "center")
  14.   (xyp-SubUpd l1 62 2)
  15.   (xyp-SubUpd l2 62 2)
  16.   (while st
  17.     (setq gr (grread 1))
  18.     (if (= (car gr) 5)
  19.       (progn
  20.         (setq pt2 (cadr gr)
  21.               rad  (+ (angle pt1 pt2) (* pi 0.5))
  22.               pt11 (polar pt1 rad -100)
  23.               pt12 (polar pt2 rad -100)
  24.               pt21 (polar pt1 rad 100)
  25.               pt22 (polar pt2 rad 100)
  26.         )
  27.         (xyp-SubUpd l0 11 pt2)
  28.         (xyp-SubUpd l1 '(10 11) (list pt11 pt12))
  29.         (xyp-SubUpd l2 '(10 11) (list pt21 pt22))
  30.       )
  31.       (setq st nil)
  32.     )
  33.   )
  34.   (princ)
  35. )
 楼主| 发表于 2014-6-13 07:37:12 | 显示全部楼层
xyp1964 发表于 2014-6-12 22:01
;; 凑个热闹

大神也来捧场
我想问一下,我这样处理在画的时候没有对象捕捉,请问如何才能像CAD命令一样有对象捕捉?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-5-25 23:15 , Processed in 0.218898 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表