乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 34|回复: 2

x方向上非线性放大圆思路,请帮忙修改,谢谢!

[复制链接]

22

主题

61

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
149
发表于 2004-1-23 15:13:00 | 显示全部楼层 |阅读模式
请教:这是一个在x,方向上非线性放大圆思路,因为知识有限,请大虾们帮忙修改。谢谢!
这个非线性方程是关于同样纵坐标下,圆上两点横坐标的差值(它是变量,即不同的y,差值不同)。
(DEFUN testbb (/ obj circle )
(vl-load-com)
(SETQ obj (VLAX-ENAME->VLA-OBJECT (CAR (ENTSEL "\nPick the circle: "))))
   
(setq rad (vla-get-radius obj));get the radius of circle
(setq cen (vla-get-center obj));here center is (0,0,0)
(setq pt (vla-get-point circ-obj);get the points of circle
      
if for (cadr pt(i))=(cadr pt(+(i)n);for the same y coordinate of two different points on circle
(setq leng ( ABS(-(car pt(i))(car pt(+(i)n)))));calculate the subtraction of their x coordinates
(setq leng1 (+(expt leng 2)1);bring the subtraction into nonlinear function to largen
(setq newx (/ leng1 2);then divide by 2
(setq newx1 (- newx)      
(vlax-put-property newx1 (car pt(i));take above value as new x coordinates of that two points,put back negative one to point1
(vlax-put-property newx (car pt(+(i)n)));put back positive one to point2
                                        ;Here short of one line: according to those points,get a polyline.
  (command "_.extrude" (entlast) "" z "");extrude the polyline at a height to get cylinder
  
  (PROMPT "\nBlock has been scaled.")
  (PRINC)
)
回复

使用道具 举报

13

主题

52

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
104
发表于 2004-1-23 22:22:00 | 显示全部楼层
x方向上非线性放大圆就是椭圆
圆形就是长短轴相同的椭圆
回复

使用道具 举报

22

主题

61

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
149
发表于 2004-1-23 23:33:00 | 显示全部楼层
它是一个近似椭圆的东东,用的可能是创造椭圆的机理,但是又不同于椭圆,它在横向上的宽度遵循一个非线性方程,不是按椭圆得到的宽度。
谢谢你的回贴!
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-8 09:24 , Processed in 0.793010 second(s), 69 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表