明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1884|回复: 5

请问如何计算包围面积

[复制链接]
发表于 2004-3-17 13:42:00 | 显示全部楼层 |阅读模式
我刚刚开始看arx,由于毕业设计需要


我想实现以下功能:点选几条线以后,输出曲线包围的面积(两条直线,一条曲线)


请问可以实现么?能不能给点思路, (两条直线就是坐标轴,面积是曲线和其中一条轴线所包围的面积).谢谢大家!!!
 楼主| 发表于 2004-3-17 13:44:00 | 显示全部楼层
补充一下,曲线为spline
发表于 2004-3-18 17:30:00 | 显示全部楼层
用微积分的概念,选取微小步距fstep,从x轴0点开始把区域化分为若干个矩形,然后矩形面积相加。矩形的面积等于fstep乘于曲线的y坐标。y坐标可以通过一条垂直x轴的垂直线与曲线的交点来获得。
发表于 2004-5-17 17:14:00 | 显示全部楼层
AcDbPolyline *pPolyline=AcDbPolyline::cast(spline);
AcGePoint2d startpt;
AcGePoint2d endpt;

long double m_S=0;//(startpt.x+endpt.x)*(startpt.y-endpt.y);
for (int i=0;i<pPolyline->numVerts()-1;i++)
{
pPolyline->getPointAt(i,startpt);
pPolyline->getPointAt(i+1,endpt);
m_S=m_S+(startpt.x+endpt.x)*(startpt.y-endpt.y);
}
pPolyline->getPointAt(pPolyline->numVerts()-1,startpt);
pPolyline->getPointAt(0,endpt);
m_S=m_S+(startpt.x+endpt.x)*(startpt.y-endpt.y);
发表于 2004-5-18 09:30:00 | 显示全部楼层
你把你的東西轉成封閉的多義線,直接可以得到面積
发表于 2004-5-18 13:45:00 | 显示全部楼层
當然,由多義線或則其他封閉圖形可以得到面積.


但是微積分方法可以得到多義線的方向.這很多地方都要用到.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-26 06:00 , Processed in 0.148633 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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