skyline 画圆成多边形的 关系 已解决

文章讲述了在Skyline软件中画圆时出现的正五边形现象,实际上是由于CreateCircle方法默认使用了正多边形生成,通过改变分段数模拟圆形。涉及计算机图形学中的多边形生成算法和实验案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

   

        在skyline 日常画圆中,发现一个诡异的事情,第一次画圆 老是正五边形,但是 编辑圆的时候就自动成为圆形,大概猜测,第一次是 按照五条线成圆的方案,二次是 知道是正多边形,就自然形成圆。

	    
//https://www.skylinesoft.com/KB_Resources/TED/WebHelp/ProgrammersGuideNew/CreateCircle.htm
// 画圆,和 正五边形 区别。
// The CreateCircle method is essentially the same as CreateRegularPolygon. The only difference between the two is that the CreateCircle method has 12 segments as its default number of segments.
// CreateCircle方法本质上与CreateRegularPolygon相同。两者之间唯一的区别是CreateCircle方法有12个线段作为其默认线段数。
// The number of segments the regular polygon has. The more segments, the smoother and more circular it appears.
// 正多边形的分段数。分段越多,它显示得越平滑、越圆形。
// 解决初始化 画圆。是多边形的问题。两个函数 其实是一样的。

// ITerrainRegularPolygon74Ptr
m_circle = m_pISGWorld->Creator->CreateRegularPolygon(position, radius,360, lineColor->ToHTMLColor(), fillColor->ToHTMLColor(), groupId, "circle");

// ITerrainRegularPolygon74Ptr
//m_circle = m_pISGWorld->Creator->CreateCircle(position, radius, lineColor->ToHTMLColor(), fillColor->ToHTMLColor(), groupId, "circle");


 方法中,可以传入多边形 然后形成圆,实际函数 没有这个 参数,也许是使用的版本好不一致,因此 直接采用正多边形,来360个点,形似圆的办法。

HRESULT CreateRegularPolygon(

       IPosition74* Position,

       double Radius,

       long NumOfSegments,

       VARIANT LineColor,

       VARIANT FillColor,

       BSTR GroupID,

       BSTR Description,

       ITerrainRegularPolygon74** pITerrainRegPolygon74)


  ITerrainRegularPolygon74Ptr CreateRegularPolygon (
        struct IPosition74 * Position,
        double Radius,
        long NumOfSegments,
        const _variant_t & LineColor,
        const _variant_t & FillColor,
        _bstr_t GroupID,
        _bstr_t Description );

 参考 多边形 成 圆的问题 ,高深算法不懂!

数字图像处理:实验一 MATLAB 图像处理基础_数字图像处理实验所需软件-CSDN博客

计算机图形学(四)—— 实验四:种子填充算法_画图软件里的填充算法-CSDN博客

计算机图形学(三)——实验三:圆的生成算法_图案对称生成算法有什么-CSDN博客

计算机图形学(二)——实验二:直线的生成算法_计算机图形学实验报告-CSDN博客

计算机图形学(一)——数据压缩:道格拉斯普克法_道格拉斯扑克法-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

PHP代码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值