Пример #1
0
 inline
 Circle3d
 Circle3d::transformedBy(const TTransformation& transformation) const {
     return Circle3d(
         centerPoint().transformedBy(transformation),
         normalVector().transformedBy(transformation),
         transformation.scale() * radius()
     );
 }
Пример #2
0
void 
AsdkBody::createRectToCircleReducer(
    const AcGePoint3d& baseCorner, 
    const AcGeVector2d& baseSizes,
	const AcGePoint3d& circleCenter, 
    const AcGeVector3d& circleNormal, 
    double circleRadius,
    int approx)
{
	assertWriteEnabled();
	m_3dGeom = 
    Body::rectangleToCircleReducer(
        *(Point3d*)&baseCorner, 
        *(Vector2d*)&baseSizes,
		Circle3d(
            Line3d(
                *(Point3d*)&circleCenter, 
                *(Vector3d*)&circleNormal), 
            circleRadius), 
        approx);
    if (debugMode())
	    if (! m_3dGeom.isValid())
            throw eFail;
}
Пример #3
0
 inline
 Circle3d
 Circle2d::placedOnto(const Plane3d& plane) const {
     return Circle3d(centerPoint().placedOnto(plane), plane.normalVector(), radius());
 }
Пример #4
0
 inline
 Circle3d
 Circle3d::circumcircle(const Triangle3d& triangle) {
     return Circle3d(triangle.vertex(0), triangle.vertex(1), triangle.vertex(2));
 }