找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: szx025

[讨论]:如何让两线平行

[复制链接]

已领礼包: 2个

财富等级: 恭喜发财

发表于 2007-3-25 10:46:59 | 显示全部楼层
最初由 szx025 发布
[B]有一点不得其解,p10 (polar pt1 0 xx)这句的意思我的理解是P10沿0度角从PT1平移XX.也就是说P10一定在PT1的右边,但程序执行是,当PT1定位在左下角,PT2定位在右上角时,P10为何自动定位到PT1的左边.[/B]

取核心代码讨论如下:

  1. (progn
  2.     ;;置入常数,计算角度
  3.     (setq l 100.
  4.           k (angle pt1 pt2)
  5.     )
  6.     ;;为防止除以零而出错,进行判断
  7.     (if        (or (= k pi) (= k 0))
  8.         ;;若PT1、PT2两点水平,则复制将PT1做与PT2相同处理得到P10。
  9.         (setq p10 (polar pt1 (* pi 1.5) l))
  10.         ;;否则,计算P10点位位置。
  11.         ;;因为这里的xx可正可负,所以P10不一定都在PT1的X轴正方向。
  12.         (setq xx  (* l (/ (cos k) (sin k)))
  13.               p10 (polar pt1 0 xx)
  14.         )
  15.     )
  16.     ;;计算P20点位位置
  17.     (setq p20 (polar pt2 (* pi 1.5) l))
  18.     ;;绘制线段
  19.     (setvar "OSMODE" 0)
  20.     (command "line" pt1 pt2 "")
  21.     (command "line" p10 p20 "")
  22. )

再举个例子:我从你那里借了-100元,那么最后我们该如何结算呢?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-3-25 13:16:04 | 显示全部楼层
谢谢ZML的耐心指导,建议其他高手向你学习,也让我们能知其然,也能知其所以然
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-17 15:30 , Processed in 0.229209 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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