乐筑天下

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

[编程交流] 先进措施

[复制链接]

8

主题

41

帖子

33

银币

初来乍到

Rank: 1

铜币
40
发表于 2022-7-5 18:38:09 | 显示全部楼层 |阅读模式
你好
我需要一个lisp程序来执行以下操作
矩形/方形区域/圆形区域的喷雾灌溉设计。
步骤1:要求用户输入形状,矩形或圆形
第2步:。如果输入的区域为矩形,请使用以下步骤,
第3步:要求用户输入首选半径,
第4步:
如果输入值为
在4到4.5m之间,编程在每个角落插入名为15-90的块。
在3到3.5m之间,编程在每个角落插入名为12-90的块。
在2到2.5m之间,编程在每个角落插入名为10-90的块。
步骤5
如果用户在步骤3中输入的值为4-4.5m,并且截面值的长度取自步骤3,则使用测量命令将多段线的每个截面除以块名15-180。
类似地,步骤3的输入在3-3.5m之间,然后使用块名12-180,2-2.5m,然后使用10-180。
 
如果步骤1上的输入是循环的,请跳过步骤4,直接转到步骤5。
 
下一步还需要添加一些内容,我知道这在现阶段要求太多。
 
提前谢谢。
Suriwaits。
喷雾图纸
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 18:42:27 | 显示全部楼层
内部喷水装置呢,不是应该有吗?
 
非常简单的任务只是很多规则,喷雾器半径到我会通过多少头返回?第一次尝试4.5可以吗?然后是3.5,然后是2.5。L与W的头部半径不同吗?瘦长的直肠?
 
物体是自动的,因为圆不是直线,矩形或正方形应该无关紧要。此外,直肠应在任何角度工作。wierd形状呢?
 
不管怎样,我确信这样的事情存在,它是否免费是另一个问题。
 
看看这个http://www.softwarerepublic.com/raincad/raincad.aspx
回复

使用道具 举报

8

主题

41

帖子

33

银币

初来乍到

Rank: 1

铜币
40
发表于 2022-7-5 18:47:13 | 显示全部楼层
尊敬的Bigal:,
 
我是手工设计的,我买不起raincad、Land F/X等软件。
该软件的大部分都有关于市场上大多数可用产品的数据库,并且根据我们对所需洒水器的输入,可以很好地处理正方形、矩形和圆形等规则区域。对于不规则区域,我们必须自行手动调整喷水装置。
 
当我做设计时,我想要的是头对头的覆盖,而不是需要多少喷头。我可以手动放置条形喷嘴(细长矩形)。
是的,当然我需要整圈洒水器。在这个阶段我不想太打扰你。
 
对于圆,我总是在它们上面绘制多段线,因此对象总是直线/圆弧/多段线。
 
Suriwaits。
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 18:48:43 | 显示全部楼层
我仍然认为需要一些规则,dwg是精确的,间距为4.1,当这个长度略小于我所期望的时,只允许稍微更多的重叠。
 
在lisp中,很容易计算出边的长度,并为measure命令计算出给定范围的间距,然后添加角点。
 
您的范围需要更精确4-4.5 3-3.5 3.75时会发生什么?
 
最好发布带有一些真实示例的dwg。
回复

使用道具 举报

8

主题

41

帖子

33

银币

初来乍到

Rank: 1

铜币
40
发表于 2022-7-5 18:52:31 | 显示全部楼层
让我们从半圆形喷水器开始。角落和全自动喷水装置将在稍后处理。
找出段(X)的长度,将该长度除以在首选半径(Y)中输入的值,如果X/Y是分数,则将其四舍五入到最近的整数,例如,如果Z=2.3,则四舍五入到2(Z’)&如果Z=2.6,则四舍五入到3(Z’)。
现在将X除以新的Z’,显示计算的半径®为=X/Z’,询问用户是否继续计算半径®,如果是,则继续执行分割命令,段数为Z’,块名基于范围,即15-180(4-4.5)、12-180(3-3.5m)和10-180(2-2.5m)。
例子:
列表线长度X=13m(根据图纸计算)
首选半径Y=4.2(用户输入)
段数Z=13/4.2=3.09
Z’=3(Z值的四舍五入)
分割X/Z’=4.333,显示为“计算半径为4.33。是否继续(是/否),如果输入为“否”,请用户“输入新的首选半径”。如果用户输入为“是”,继续分割(CAD命令)名为15-180的块的Z’编号的对象。
半圆洒水器。图纸
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 18:55:54 | 显示全部楼层
你是希望有人写下所有的代码,还是只想让它工作的所有部分,然后你自己动手。
 
您已经在上面的帖子中解释了所需的步骤。只有一个问题使用直线和pline之间有区别下面的例子是针对直线的
 
一个简单的开始
  1. (setq pickobj (entsel "\nPick line :"))
  2. (setq stpt (cdr (assoc 10 (entget (car pickobj)))))
  3. (setq endpt (cdr (assoc 11 (entget (car pickobj))))
  4. (setq len (distance stpt endpt))
  5. (setq rad (getreal "\nEnter desirable radius))
  6. (setq howmany (/ len rad))
  7. (Princ (fix howmany))
回复

使用道具 举报

8

主题

41

帖子

33

银币

初来乍到

Rank: 1

铜币
40
发表于 2022-7-5 18:58:55 | 显示全部楼层
尊敬的Bigal:,
 
如果能为我编写完整的代码就太好了,因为我不知道如何编写lisp。
我希望代码能够在线、弧和普林线上工作。当谈到pline时,应考虑一次两个顶点之间的线段长度。不是总长度。
 
据我从你上面发布的代码中了解到的,它停在中间的某个地方,即代码停在根据给定半径确定所需喷水器的数量时,大多数情况下都是整数,提醒这个数字不是必需的。我想把这个数四舍五入到最接近的整数,然后把长度除以整数。现在显示结果,因为计算出的半径是如此之多,如此等等,正如我在上一篇文章中详细介绍的那样。
 
谢谢
 
Suriwaits。
 
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 19:00:56 | 显示全部楼层
 
cadtutor的人自愿投入他们的时间,所以这不是一个立即去那里得到你想要的东西,我现在有5分钟的空闲时间,所以我会拿出更多的代码作为一个例子,我知道李mac有一个适当的四舍五入例程也需要它。
 
如果你真的想要快速的东西,这里有很多好的人,他们会为你的工作付出代价。
回复

使用道具 举报

0

主题

301

帖子

301

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-5 19:05:28 | 显示全部楼层
Suriwaits,
 
我看了一下你的问题。
 
通常你需要头对头洒水。因为我们只能选择10’12’或15’半径。
不太确定,但我认为理想的半径应该是使余数最小化的半径
距离/半径的。
 
例如,边长为15.2,
 
  1. (rem 15.2 4.57)   ==> 1.49
  2. (rem 15.2 3.66)   ==> 0.56
  3. (rem 15.2 3.048) ==> 3.008

 
因此,我们得到的最小过喷量为3.66或12英尺。
 
如果它适用于每种情况,您可以在没有
提示输入。
 
ymg公司
回复

使用道具 举报

8

主题

41

帖子

33

银币

初来乍到

Rank: 1

铜币
40
发表于 2022-7-5 19:09:03 | 显示全部楼层
 
 
我理解你的努力,感谢你抽出时间。
不要着急。我可以永远等待。
再加上一些代码,我会努力弥补。
 
谢谢
Suriwaits公司
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-12 13:40 , Processed in 0.567472 second(s), 72 queries .

© 2020-2025 乐筑天下

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