c++ Arx二次开发创建椭圆和样条曲线

本文介绍了C++ ARX二次开发中创建椭圆和样条曲线的方法。详细讲解了AcDbEllipse和AcDbSpline类的构造函数,包括根据中心点、单位法向量、长轴、半径比例创建椭圆,以及利用AcGePoint3dArray创建样条曲线。还涵盖了命令的实现和测试效果。
摘要由CSDN通过智能技术生成

一、本节课程
c++ Arx二次开发创建椭圆和样条曲线

二、本节要讲解的知识点

   1、如何应用C++ ARX二次开发创建椭圆(对AcDbEllipse类的构造函数的直接封装和根据外接矩形来创建椭圆)

   2、如何应用C++ ARX二次开发创建样条曲线(对AcDbSpline类的构造函数的直接封装)

三、具体内容

1、创建椭圆的思路

默认构造函数:AcDbEllipse::AcDbEllipse ()

有参数构造函数:AcDbEllipse(

    const AcGePoint3d& center,

    const AcGeVector3d& unitNormal,

    const AcGeVector3d& majorAxis,

    double radiusRatio,

    double startAngle = 0.0,

    double endAngle = 6.28318530717958647692

);

(1)AcDbEllipse类的构造函数,给定中心点、所在平面、长轴的一个端点和半径比例来创建椭圆。半径比例是一个用来定义椭圆的短轴相对于长轴的比例的参数。半径比例为1时,椭圆就变为圆。startAngle、endAngle这两个参数的配合使用,可以创建部分椭圆(椭圆弧)。

(2)根据外接矩形来创建椭圆,椭圆的长、短轴的端点就是外接矩形的四条边的中点。因此,只要外接矩形的角点确定,椭圆的大小和形状就能计算出来。

2、创建椭圆的步骤和代码实现:

AcDbObjectId CEllipseUtil::Add(const AcGePoint3d &ptCenter,const AcGeVector3d & vecNormal,const AcGeVector3d &majorAxis,double ratio)

{

         AcDbEllipse *pEllipse=new AcDbEllipse(ptCenter,vecNormal,majorAxis,ratio);

         return CDwgDatabaseUtil::PostToModelSpace(pEllipse);//将对象添加到模型空间的函数

}

 

AcDbObjectId CEllipseUtil::Add(const AcGePoint2d &pt1,const AcGePoint2d &pt2)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值