Skip to content
On this page

[mxcad_2d API documentation] (../README. md)/[2d] (../modules/2d. md)/McDbArc

Class: McDbArc

2d.McDbArc

Represents a circular arc.

Example

ts
import { McDbArc, MxCpp } from "mxcad"
//Draw an arc
Const arc=new McDbArc()//Construct a new arc object
Arc.center=new McGePoint3d (0,0,0)//Set the center of the arc
Arc.radius=20//Set the radius of the arc
Arc.startAngle=Math.PI/2//Set the starting angle of the arc
Arc.EndAngle=Math. PI * 3/2//Set the end angle of the arc
Arc.trueColor=new McCMColor (255, 233, 0)//Set the color of the arc
MxCpp. getCurrentMxCAD(). drawEntity (arc)//Draw an arc

Hierarchy

Table of contents

Constructors

Properties

Accessors

Methods

Constructors

constructor

new McDbArc(imp?)

Constructor.

Parameters

NameTypeDescription
imp?AnyInternal object

Example

ts
import { McDbArc } from "mxcad";
const arc = new McDbArc()

Overrides

McDbCurve.constructor

Properties

imp

imp: any = 0

Internal implementation object.

Inherited from

McDbCurve.imp

Accessors

center

get center(): McGePoint3d

Obtain the center coordinates.

Returns

McGePoint3d

Example

ts
import { McDbArc } from "mxcad";
const arc = new McDbArc();
arc.setCenter(0,0,0);
const center = arc.center;
Console.log ("center", center);//(0,0,0)

set center(pt): void

Set the center coordinates.

Parameters

NameTypeDescription
PtMcGePoint3d (2d. McGePoint3d. md)Center coordinates

Returns

void

Example

ts
import { McDbArc, McGePoint3d } from "mxcad";
const arc = new McDbArc();
arc.center = new McGePoint3d(0 ,0 ,0);

colorIndex

get colorIndex(): number

Obtain object color index

Returns

number

Example

ts
import { McDbEntity, ColorIndexType } from 'mxcad'
 const ent = new McDbEntity();
 ent.colorIndex = ColorIndexType.kByblock;
 console.log(ent.colorIndex)

Inherited from

McDbCurve.colorIndex

set colorIndex(val): void

Set object color index

Parameters

NameTypeDescription
ValnumberColorIndexType

Returns

void

Inherited from

McDbCurve.colorIndex


drawOrder

get drawOrder(): number

Display order of objects

Returns

number

Example

ts
//Assuming ent is a valid instance object
const order = ent.drawOrder();

Inherited from

McDbCurve.drawOrder

set drawOrder(order): void

Display order of objects

Parameters

NameTypeDescription
Ordernumbersequential value

Returns

void

Example

ts
import { MxCpp, MxCADSelectionSet } from "mxcad";

let ss = new MxCADSelectionSet();
If (! Await ss.userSelect) return;
//Obtain the maximum and minimum display order of objects on the current graph
let minmaxOrder = MxCpp.getCurrentDatabase().currentSpace.getMinMaxDrawOrder();
//Place the object at the top.
let lOrder = minmaxOrder.maxDrawOrder + 1;
ss.forEach((id) => {
  let ent = id.getMcDbEntity();
  if (ent) {
    ent.drawOrder = lOrder;
  }
})

Inherited from

McDbCurve.drawOrder


dxf0

get dxf0(): string

Obtain the type name of the object's DXF group code, which is the same as the DXF group code in AutoCAD. For example, the type name of the line is McDbLine, and the group code value for DXF0 is: LINE and DXF0 group code values can be used for type filtering when constructing sets.

Returns

string

Inherited from

McDbCurve.dxf0


endAngle

get endAngle(): number

Obtain the end angle.

Returns

number

Example

ts
//Arc is an effective arc instance
cosnt endAngle = arc.endAngle;

set endAngle(r): void

Set the end angle.

Parameters

NameTypeDescription
Rnumberangle

Returns

void

Example

ts
import { McDbArc } from "mxcad";
const arc = new McDbArc();
arc.endAngle = Math.PI/4;

layer

get layer(): string

Obtain the layer name of the object

Returns

string

Inherited from

McDbCurve.layer

set layer(val): void

Set object layer name

Parameters

NameTypeDescription
ValstringLayer Name

Returns

void

Example

ts
import { McDbEntity } from 'mxcad'
 const ent = new McDbEntity();
 ent.layer = "newLayerName";
 console.log(ent.layer)

Inherited from

McDbCurve.layer


layerId

get layerId(): McObjectId

Get layer ID object

Returns

McObjectId

Example

ts
//Assuming ent is a valid instance object
const layerId = ent.layerId;

Inherited from

McDbCurve.layerId

set layerId(id): void

Set Layer Id Object

Parameters

NameType
idMcObjectId

Returns

void

Example

ts
//Assuming ent is a valid instance object
const mxcad = MxCpp.getCurrentMxCAD();
Const layerId=mxcad. addLayer (Test Layer)
ent.layerId = layerId;

Inherited from

McDbCurve.layerId


linetype

get linetype(): string

Obtain the object line type name

Returns

string

Inherited from

McDbCurve.linetype

set linetype(val): void

Set object line type name

Parameters

NameTypeDescription
ValstringLine type name

Returns

void

Example

ts
import { McDbEntity } from 'mxcad'
const ent = new McDbEntity()
ent.linetype = "MyLineType";
console.log(ent.linetype)

Inherited from

McDbCurve.linetype


linetypeId

get linetypeId(): McObjectId

Get entity object line type ID

Returns

McObjectId

Example

ts
//Assuming ent is a valid instance object
const linetypeId = ent.linetypeId;

Inherited from

McDbCurve.linetypeId

set linetypeId(id): void

Set entity object line type ID

Parameters

NameType
idMcObjectId

Returns

void

Example

ts
//Assuming ent is a valid instance object
const mxcad = MxCpp.getCurrentMxCAD();
const lineId = mxcad.addLinetypeEx("TestMyLine", '25,-5');
ent.linetypeId = lineId;

Inherited from

McDbCurve.linetypeId


linetypeScale

get linetypeScale(): number

Obtain the proportion of object line types

Returns

number

Inherited from

McDbCurve.linetypeScale

set linetypeScale(val): void

Set object line type scale

Parameters

NameTypeDescription
ValnumberLine type ratio

Returns

void

Example

ts
import { McDbEntity } from 'mxcad'
const ent = new McDbEntity()
ent.linetypeScale = 0.8;
console.log(ent.linetypeScale)

Inherited from

McDbCurve.linetypeScale


lineweight

get lineweight(): number

Obtain object line weight

Returns

number

Inherited from

McDbCurve.lineweight

set lineweight(val): void

Set object line weight

Parameters

NameTypeDescription
Valnumberline weight

Returns

void

Example

ts
import { McDbEntity } from 'mxcad'
const ent = new McDbEntity()
ent.lineweight = 20;
console.log(ent.lineweight)

Inherited from

McDbCurve.lineweight


normal

get normal(): McGeVector3d

Return the normal of the object

Returns

McGeVector3d

Example

ts

Inherited from

McDbCurve.normal

set normal(val): void

Set the normal of the object

Parameters

NameType
valMcGeVector3d

Returns

void

Example

ts

Inherited from

McDbCurve.normal


objectName

get objectName(): string

Get the object name.

Returns

string

Return object name

Example

ts
import { McRxObject } from 'mxcad';

let obj = new McRxObject();
console.log(obj.objectName);

Inherited from

McDbCurve.objectName


radius

get radius(): number

Obtain the radius of the circle.

Returns

number

Example

ts
//Arc is an effective arc instance
cosnt r = arc.radius;

set radius(r): void

Set the radius of the circle.

Parameters

NameTypeDescription
Rnumbercircle radius

Returns

void

Example

ts
import { McDbArc  } from "mxcad";
const arc = new McDbArc();
arc.radius = 20;

startAngle

get startAngle(): number

Obtain the starting angle.

Returns

number

Example

ts
//Arc is an effective arc instance
cosnt startAngle = arc.startAngle;

set startAngle(r): void

Set the starting angle.

Parameters

NameTypeDescription
Rnumberangle

Returns

void

Example

ts
import { McDbArc } from "mxcad";
const arc = new McDbArc();
arc.startAngle = Math.PI/4;

textStyle

get textStyle(): string

Obtain the text style of the object

Returns

string

Inherited from

McDbCurve.textStyle

set textStyle(val): void

Set object text style

Parameters

NameTypeDescription
ValstringText style name

Returns

void

Example

ts
import { McDbEntity } from 'mxcad'
const ent = new McDbEntity()
ent.textStyle = "st_style";

Inherited from

McDbCurve.textStyle


textStyleId

get textStyleId(): McObjectId

Get entity text style

Returns

McObjectId

Example

ts
//Assuming ent is a valid instance object
const textStyleId = ent.textStyleId;

Inherited from

McDbCurve.textStyleId

set textStyleId(id): void

Set the text style of the entity

Parameters

NameType
idMcObjectId

Returns

void

Example

ts
//Assuming ent is a valid instance object
const mxcad = MxCpp.getCurrentMxCAD();
const textStyleId = mxcad.addTextStyle("MyLineTypeTextStyle", "txt.shx", "hztxt.shx", 1);
ent.textStyleId = textStyleId;

Inherited from

McDbCurve.textStyleId


trueColor

get trueColor(): McCmColor

Obtain the color of the object

Returns

McCmColor

Example

ts
import { McDbEntity, McCmColor} from 'mxcad'
 const ent = new McDbEntity();
 ent.trueColor = new McCmColor(255, 0, 0);
 console.log(ent.trueColor)

Inherited from

McDbCurve.trueColor

set trueColor(val): void

Set object color

Parameters

NameType
valMcCmColor

Returns

void

Inherited from

McDbCurve.trueColor


visible

get visible(): boolean

Is the object visible

Returns

boolean

Inherited from

McDbCurve.visible

set visible(val): void

Set whether it is visible

Parameters

NameTypeDescription
ValbooleanBoolean value

Returns

void

Example

ts
import { McDbEntity } from 'mxcad'
const ent = new McDbEntity()
ent.visible = true;
console.log(ent.visible)

Inherited from

McDbCurve.visible

Methods

IntersectWith

IntersectWith(intersectObject, exOption): McGePoint3dArray

Intersection with other entities to obtain the intersection point

Parameters

NameTypeDescription
IntersectObject[McDbEntity] (2d. McDbEntity. md)The entity object that needs to intersect is the entity object
ExOptionIntersection (../enums/2d. McDb. Intersect. md)Intersection options

Returns

McGePoint3dArray

Obtain all intersection points

Example

ts
import { McDbLine, McDb } from 'mxcad'
const line1 = new McDbLine(new McGePoint3d(0,0,0), new McGePoint3d(20,1,0));
const line2 = new McDbLine(new McGePoint3d(10,10,0), new McGePoint3d(11,1,0));
const ptArr = line1.IntersectWith(line2, McDb.Intersect.kExtendBoth)

Inherited from

McDbCurve.IntersectWith


assertObjectModification

assertObjectModification(autoUndo?): number

Setting the state of the object to be changed can automatically trigger the update display function to update the display. For example, if the block table record is updated and the block reference needs to be notified to update the display, this function can be called.

Parameters

NameTypeDefault value
autoUndobooleanfalse

Returns

number

Example

ts
//Assuming obj is a database object
obj.assertObjectModification()

Inherited from

McDbCurve.assertObjectModification


clone

clone(): null | McDbObject

Clone objects.

Returns

null | McDbObject

The cloned object.

Example

ts
//Assuming obj is a database object
const obj_clone = obj.clone();

Inherited from

McDbCurve.clone


computeArc

computeArc(dStartPointX, dStartPointY, dMidPointX, dMidPointY, dEndPointX, dEndPointY): boolean

Calculate the arc at 3 points

Parameters

NameType
dStartPointXnumber
dStartPointYnumber
dMidPointXnumber
dMidPointYnumber
dEndPointXnumber
dEndPointYnumber

Returns

boolean

Example

ts
import { McDbArc, McGePoint3d, MxCpp } from "mxcad";

const arc = new McDbArc();
const pt1 = new McGePoint3d(20,0,0);
const pt2 = new McGePoint3d(0,20,0);
const pt3 = new McGePoint3d(-20,0,0);
arc.computeArc(pt1.x, pt1.y, pt2.x, pt2.y, pt3.x, pt3.y);
MxCpp.getCurrentMxCAD().drawEntity(arc)

createExtensionDictionary

createExtensionDictionary(): boolean

Create extended dictionary data for objects

Returns

boolean

Example

ts
//Assuming obj is a database object
const res = obj.createExtensionDictionary();

Inherited from

McDbCurve.createExtensionDictionary


deleteXData

deleteXData(appName): boolean

Delete data related to entity specified application name

Parameters

NameTypeDescription
AppNamestringExtended Data Name

Returns

boolean

Example

ts
import { MxCADUiPrEntity, McDbEntity } from "mxcad";

let selEntity = new MxCADUiPrEntity();
SelEntity. setMessage ("Select Object");
let id = await selEntity.go();
if (!id.isValid()) return;
let ent:McDbEntity = id.getMcDbEntity();
if (ent === null) return;
const res = ent.deleteXData("DataName");
if(res){
//Delete successfully
}else
//Delete failed
}

Inherited from

McDbCurve.deleteXData


disableDisplay

disableDisplay(isDisable): void

Disable automatic update display of objects

Parameters

NameTypeDescription
IsDisablebooleanDo you want to disable automatic object update display

Returns

void

Example

ts
import { McDbLine } from 'mxcad'
const line1 = new McDbLine(new McGePoint3d(0,0,0), new McGePoint3d(20,1,0));
line1.disableDisplay(true)

Inherited from

McDbCurve.disableDisplay


erase

erase(): boolean

Delete object.

Returns

boolean

Whether the deletion was successful.

Example

ts
//Assuming obj is a database object
const res = obj.erase();
console.log(res);

Inherited from

McDbCurve.erase


explode

explode(): MxCADResbuf

Break the object and return the linked list of the object's data after being broken

Returns

MxCADResbuf

Rebuf data

Example

ts
import { McDbEntity, MxCADResbuf } from "mxcad";
//Obtain the target object
let getEnt = new MxCADUiPrEntity();
GetEnt.setMessage ("Select object to break: ");
let id = await getEnt.go();
let ent:McDbEntity = id.getMcDbEntity();
if (ent === null) return;
//Smash objects
      let retExplode: MxCADResbuf = ent.explode();
      if (retExplode.GetCount() == 0) return;
      let iExplodeConut = retExplode.GetCount();
      for (let j = 0; j < iExplodeConut; j++) {
          let tmpobj = retExplode.AtObject(j).val;
          if(tmpobj instanceof McDbEntity ){
              mxcad.drawEntity(tmpobj);
          }
      }

Inherited from

McDbCurve.explode


getAllAppName

getAllAppName(): McGeStringArray

Get the application name (AppName) of all XData records contained in the entity

Returns

McGeStringArray

Example

ts
//Assuming ent is a valid instance object
const appNames = ent.getAllAppName();
console.log(appNames);

Inherited from

McDbCurve.getAllAppName


getArea

getArea(): Object

Calculate Area

Returns

Object

Is the val area value | ret successfully obtained

NameType
retboolean
valnumber

Example

ts
import { McGePoint3d, McDbCircle } from "mxcad"

const center = new McGePoint3d(0,0,0);
const circle = new McDbCircle(center, 20);
const area = circle.getArea();
Console.log ("Circle area: ", area)

Inherited from

McDbCurve.getArea


getBoundingBox

getBoundingBox(): Object

Obtain the minimum outsourcing of the object

Returns

Object

NameType
maxPtMcGePoint3d
minPtMcGePoint3d
retboolean

Example

ts
import { McDbText, McGePoint3d } from 'mxcad'
const text = new McDbText();
Text.textString="Test Test";
text.height = 20;
text.position = text.alignmentPoint = new McGePoint3d(0,0,0);
const { minPt, maxPt, ret } = text.getBoundingBox()

Inherited from

McDbCurve.getBoundingBox


getClosestPointTo

getClosestPointTo(givenPnt, isExtend): Object

Obtain the closest point from a point to the curve

Parameters

NameTypeDescription
GivenPnt[McGePoint3d] (2d. McGePoint3d. md)Reference Point
IsExtendbooleanWhether to extend entity

Returns

Object

Point objects and execution results.

NameType
retboolean
valMcGePoint3d

Example

ts
import { McGePoint3d, McDbCircle, MxCADUiPrPoint, MxCpp } from "mxcad"

const center = new McGePoint3d(0,0,0);
const circle = new McDbCircle(center, 20);
const mxcad = MxCpp.getCurrentMxCAD();
mxcad.drawEntity(circle);

const getPoint = new MxCADUiPrPoint();
getPoint.setUserDraw((pt,pw)=>{
//Get pt to the nearest point on the circle
  const point = circle.getClosestPointTo(pt);
  console.log(point)
})
const point = await getPoint.go();

Inherited from

McDbCurve.getClosestPointTo


getDatabase

getDatabase(): McDbDatabase

Get the database where the object is located

Returns

McDbDatabase

Return to database

Example

ts
//Assuming obj is a database object
const data = obj.getDatabase();

Inherited from

McDbCurve.getDatabase


getDatabaseIndexId

getDatabaseIndexId(): number

Get the index ID of the object

Returns

number

Example

ts
//Assuming obj is a database object
const id = obj.getDatabaseIndexId();

Inherited from

McDbCurve.getDatabaseIndexId


getDistAtParam

getDistAtParam(param): Object

Get the distance at the parameter location.

Parameters

NameTypeDescription
Parameter position:

Returns

Object

Distance and execution results.

NameType
retboolean
valnumber

Example

ts
//Assuming curve is an effective curve instance object
const res = curve.getDistAtParam(2);
if(res.ret){
  console.log(res.val)
}

Inherited from

McDbCurve.getDistAtParam


getDistAtPoint

getDistAtPoint(pt): Object

Obtain the distance and position of points on the curve.

Parameters

NameTypeDescription
Pt[McGePoint3d] (2d. McGePoint3d. md)Distance position

Returns

Object

Points and execution results.

NameType
retboolean
valnumber

Example

ts
import { McGePoint3d, McDbLine } from "mxcad"

const pt1 = new McGePoint3d(0,0,0);
const pt2 = new McGePoint3d(20,0,0);
const line = new McDbLine(pt1, pt2)
const res = line.getDistAtPoint(pt2);
if(res.ret){
  const dist = res.val;
  console.log(dist);//20
}

Inherited from

McDbCurve.getDistAtPoint


getEndParam

getEndParam(): Object

Get the end parameter.

Returns

Object

End parameters and execution results.

NameType
retboolean
valnumber

Example

ts
//Assuming curve is an effective curve instance object
const endPa = curve.getEndParam();
if(endPa.ret){
  console.log(endPa.val)
}

Inherited from

McDbCurve.getEndParam


getEndPoint

getEndPoint(): Object

Obtain the endpoint of the curve

Returns

Object

The endpoint and execution result of the curve.

NameType
retboolean
valMcGePoint3d

Example

ts
import { McGePoint3d, McDbLine } from "mxcad"

const pt1 = new McGePoint3d(0,0,0);
const pt2 = new McGePoint3d(20,0,0);
const line = new McDbLine(pt1, pt2)
const res = line.getEndPoint();
if(res.ret){
  const point = res.val;
  console.log(point);//(20, 0, 0)
}

Inherited from

McDbCurve.getEndPoint


getExtensionDictionary

getExtensionDictionary(): McDbDictionary

Obtain the extended dictionary data of the object

Returns

McDbDictionary

Expand dictionary data

Example

ts
//Assuming obj is a database object
const id = obj.getOwnerID();

Inherited from

McDbCurve.getExtensionDictionary


getFirstDeriv

getFirstDeriv(pt): Object

Obtain the first derivative of the curve through a certain point on the curve

Parameters

NameTypeDescription
Pt[McGePoint3d] (2d. McGePoint3d. md)Points on the curve

Returns

Object

The first derivative of the curve and its execution result.

NameType
retboolean
valMcGeVector3d

Example

ts
import { McGePoint3d, McDbCircle } from "mxcad"

const center = new McGePoint3d(0,0,0);
const circle = new McDbCircle(center, 20);
const vec = circle.getFirstDeriv(new McGePoint3d(20,0,0));// Target point tangent vector
if(vec.ret){
 const val = vec.val;
}

Inherited from

McDbCurve.getFirstDeriv


getFirstDerivFromParam

getFirstDerivFromParam(param): Object

Obtain the first derivative of the curve through curve parameters

Parameters

NameTypeDescription
Paramnumbercurve parameters

Returns

Object

The first derivative of the curve and its execution result.

NameType
retboolean
valMcGeVector3d

Example

ts
//Assuming curve is an effective curve instance object
const res = curve.getFirstDerivFromParam(5);
if(res.ret){
  console.log(res.val)
}

Inherited from

McDbCurve.getFirstDerivFromParam


getGripPoints

getGripPoints(): McGePoint3dArray

Get the control points of the object

Returns

McGePoint3dArray

Example

ts
//Assuming obj is a database object
const ptArr = obj.getGripPoints();

Inherited from

McDbCurve.getGripPoints


getHandle

getHandle(): string

Obtain object handle

Returns

string

Return object handle

Example

ts
//Assuming obj is a database object
const handle = obj.getHandle();

Inherited from

McDbCurve.getHandle


getImp

getImp(): any

Retrieve internal implementation objects.

Returns

any

Internal implementation object.

Example

ts
import { McRxObject } from 'mxcad';

let obj = new McRxObject();
let imp = obj.getImp();

Inherited from

McDbCurve.getImp


getJson

getJson(): string

Retrieve a string in JSON format.

Returns

string

A string in JSON format.

Example

ts
import { McRxObject } from 'mxcad';

let obj = new McRxObject();
const json = obj.getJson()

Inherited from

McDbCurve.getJson


getLength

getLength(): Object

Obtain the length of the curve

Returns

Object

NameType
retboolean
valnumber

Example

ts
import { MxCpp, MxCADResbuf, MxCADUtility, MxCADUiPrPoint} from "mxcad"

 const mxcad = MxCpp.App.getCurrentMxCAD();
   let filter = new MxCADResbuf();
   filter.AddMcDbEntityTypes("CIRCLE,ARC,LINE,LWPOLYLINE,ELLIPSE");
Let aryId=await MxCADUtility. userSelect ("Select target curve", filter);
   if (aryId.length == 0)  return;
   aryId.forEach(async (id) => {
       let event = id.getMcDbEntity() as McDbCurve;
       let length = event.getLength().val;
       console.log(length)
   });

Inherited from

McDbCurve.getLength


getObjectID

getObjectID(): McObjectId

Get the object ID.

Returns

McObjectId

Object ID.

Example

ts
import { McDbObject } from "mxcad";
const id = obj.getObjectID();

Inherited from

McDbCurve.getObjectID


getOwnerID

getOwnerID(): number

Obtain the ID of the object owner

Returns

number

Example

ts
//Assuming obj is a database object
const id = obj.getOwnerID();

Inherited from

McDbCurve.getOwnerID


getParamAtDist

getParamAtDist(dist): Object

Obtain parameters at the distance position.

Parameters

NameTypeDescription
DistNumberDistance Position

Returns

Object

Parameters and execution results.

NameType
retboolean
valnumber

Example

ts
//Assuming curve is an effective curve instance object
const res = curve.getParamAtDist(0);
if(res.ret){
  console.log(res.val)
}

Inherited from

McDbCurve.getParamAtDist


getParamAtPoint

getParamAtPoint(pt): Object

Obtain the curve parameters at a certain point on the curve

Parameters

NameTypeDescription
Pt[McGePoint3d] (2d. McGePoint3d. md)Points on the curve

Returns

Object

Curve parameters and execution results.

NameType
retboolean
valnumber

Example

ts
import { McGePoint3d, McDbLine } from "mxcad"

const pt1 = new McGePoint3d(0,0,0);
const pt2 = new McGePoint3d(20,0,0);
const line = new McDbLine(pt1, pt2)
const res = line.getParamAtPoint(pt1);
if(res.ret){
  const val = res.val;
  console.log(val);
}

Inherited from

McDbCurve.getParamAtPoint


getPointAtDist

getPointAtDist(dist): Object

Obtain the point at the distance position.

Parameters

NameTypeDescription
DistNumberDistance Position

Returns

Object

Points and execution results.

NameType
retboolean
valMcGePoint3d

Example

ts
import { McGePoint3d, McDbLine } from "mxcad"

const pt1 = new McGePoint3d(0,0,0);
const pt2 = new McGePoint3d(20,0,0);
const line = new McDbLine(pt1, pt2)
const res = line.getPointAtDist(10);
if(res.ret){
  const point = res.val;
  console.log(point);//(10, 0, 0)
}

Inherited from

McDbCurve.getPointAtDist


getPointAtParam

getPointAtParam(param): Object

Obtain the coordinates of the point where the curve parameters are located

Parameters

NameTypeDescription
Paramnumbercurve parameters

Returns

Object

Point objects and execution results.

NameType
retboolean
valMcGePoint3d

Example

ts
//Assuming curve is an effective curve instance object
const res = curve.getPointAtParam(5);
if(res.ret){
  console.log(res.val)
}

Inherited from

McDbCurve.getPointAtParam


getSamplePoints

getSamplePoints(dApproxEps?): MxCADResbuf

Discretize the curve into a pile of points

Parameters

NameTypeDefault valueDescription
DApproxEpsnumber0.0001sampling interval

Returns

MxCADResbuf

Rebuf data

Example

ts
import { McGePoint3d, McDbLine } from "mxcad"

const pt1 = new McGePoint3d(0,0,0);
const pt2 = new McGePoint3d(20,0,0);
const line = new McDbLine(pt1, pt2);
const resBuf = line.getSamplePoints(0.1);

Inherited from

McDbCurve.getSamplePoints


getStartParam

getStartParam(): Object

Get the starting parameters.

Returns

Object

Initial parameters and execution results.

NameType
retboolean
valnumber

Example

ts
//Assuming curve is an effective curve instance object
const startPa = curve.getStartParam();
if(startPa.ret){
  console.log(startPa.val)
}

Inherited from

McDbCurve.getStartParam


getStartPoint

getStartPoint(): Object

Obtain the starting point of the curve

Returns

Object

The starting point and execution result of the curve.

NameType
retboolean
valMcGePoint3d

Example

ts
import { McGePoint3d, McDbLine } from "mxcad"

const pt1 = new McGePoint3d(0,0,0);
const pt2 = new McGePoint3d(20,0,0);
const line = new McDbLine(pt1, pt2)
const res = line.getStartPoint();
if(res.ret){
  const point = res.val;
  console.log(point);//(0, 0, 0)
}

Inherited from

McDbCurve.getStartPoint


getxData

getxData(appName?): MxCADResbuf

Obtain the extended data of the object

Parameters

NameTypeDefault valueDescription
AppNamestring""Extended Data Name

Returns

MxCADResbuf

Example

ts
//Assuming ent is a valid instance object
const xData = ent.getXData();

Inherited from

McDbCurve.getxData


getxDataDouble

getxDataDouble(appName): Object

Retrieve the double value from the specified XData type of the entity

Parameters

NameTypeDescription
AppNamestringExtended Data Name

Returns

Object

Double value

NameType
retboolean
valnumber

Example

ts
//Assuming ent is a valid instance object
let data = ent.getxDataDouble("DataName");
if(data.ret){
  console.log(data.val)
}

Inherited from

McDbCurve.getxDataDouble


getxDataLong

getxDataLong(appName): Object

Retrieve the long (integer) value from the specified XData type of the entity

Parameters

NameTypeDescription
AppNamestringExtended Data Name

Returns

Object

Long value

NameType
retboolean
valnumber

Example

ts
//Assuming ent is a valid instance object
let data = ent.getxDataLong("DataName");
if(data.ret){
  console.log(data.val)
}

Inherited from

McDbCurve.getxDataLong


getxDataPoint

getxDataPoint(appName): Object

Retrieve point objects from the specified XData type of entity

Parameters

NameTypeDescription
AppNamestringExtended Data Name

Returns

Object

Obtain results and 3D point objects

NameType
retboolean
valMcGePoint3d

Inherited from

McDbCurve.getxDataPoint


getxDataString

getxDataString(appName): Object

Retrieve XData information associated with a specific entity and return it in string form

Parameters

NameTypeDescription
AppNamestringExtended Data Name

Returns

Object

Val XData information | whether ret returns success

NameType
retboolean
valstring

Example

ts
//Assuming ent is a valid instance object
let data = ent.getxDataString("DataName");
if(data.ret){
  console.log(data.val)
}

Inherited from

McDbCurve.getxDataString


highlight

highlight(isHighlight): void

Set whether the object is highlighted

Parameters

NameTypeDescription
IsHighlightbooleanIs it highlighted

Returns

void

Example

ts
import { McDbEntity } from 'mxcad'
const ent = new McDbEntity()
ent.highlight(true);

Inherited from

McDbCurve.highlight


initTempObject

initTempObject(imp): void

Initialize temporary objects.

Parameters

NameTypeDescription
'imp''any'Internal implementation object

Returns

void

Example

ts
import { McRxObject } from 'mxcad';

let obj = new McRxObject();
obj.initTempObject()

Inherited from

McDbCurve.initTempObject


isErased

isErased(): boolean

Has the object been deleted

Returns

boolean

Example

ts
//Assuming obj is a database object
const res = obj.isErased();
console.log(res);

Inherited from

McDbCurve.isErased


isHaveExtensionDictionary

isHaveExtensionDictionary(): boolean

Is there any extended dictionary data available

Returns

boolean

Example

ts
//Assuming obj is a database object
const res = obj.isHaveExtensionDictionary();

Inherited from

McDbCurve.isHaveExtensionDictionary


isKindOf

isKindOf(sObjectName): boolean

Determine object type

Parameters

NameTypeDescription
SOrtNamestringType Name

Returns

boolean

Return whether the object is of the target type

Example

ts
import { McRxObject } from 'mxcad';

let obj = new McRxObject();
let isKind = obj.isKindOf('SomeObjectType');
console.log(isKind); //  Output: True or false

Inherited from

McDbCurve.isKindOf


isNull

isNull(): any

Determine if it is an empty object

Returns

any

Example

ts
import { McRxObject } from 'mxcad';

let obj = new McRxObject();
console.log(obj.isNull()); //  Output: True or false

Inherited from

McDbCurve.isNull


mirror

mirror(point1, point2): boolean

Mirror oriented object

Parameters

NameTypeDescription
Point1[McGePoint3d] (2d. McGePoint3d. md)Mirror Base Point
point2McGePoint3d-

Returns

boolean

Example

ts
import { McDbEntity, McGePoint3d } from 'mxcad'
const ent = new McDbEntity()
ent.mirror(new McGePoint3d(0,0,0), new McGePoint3d(20,10,0))

Inherited from

McDbCurve.mirror


move

move(fromPoint, toPoint): boolean

move objects

Parameters

NameTypeDescription
From Point[McGePoint3d] (2d. McGePoint3d. md)Move the starting point
ToPoint[McGePoint3d] (2d. McGePoint3d. md)Move End Point

Returns

boolean

Example

ts
import { McDbEntity, McGePoint3d } from 'mxcad'
const ent = new McDbEntity()
ent.move(new McGePoint3d(0,0,0), new McGePoint3d(20,0,0))

Inherited from

McDbCurve.move


moveGripPointsAt

moveGripPointsAt(iIndex, dXOffset, dYOffset, dZOffset): any

Control points for moving objects

Parameters

NameTypeDescription
IIndexNumberIndex
DXOffsetnumberX-axis offset
DYOffsetnumberY-axis offset
DZOffsetnumberZ-axis offset

Returns

any

Example

ts
//Assuming obj is a database object
obj.moveGripPointsAt(1,10,10,10);

Inherited from

McDbCurve.moveGripPointsAt


offsetCurves

offsetCurves(dOffsetDist, ptOffsetRef): McDbObjectArray

Obtain offset curve

Parameters

NameTypeDescription
DOffsetDistnumberoffset distance
PtOffsetRef[McGePoint3d] (2d. McGePoint3d. md)Offset point

Returns

McDbObjectArray

Offset object array.

Example

ts
import { MxCADUiPrPoint, MxCpp } from 'mxcad'
   let getFristPoint = new MxCADUiPrPoint();
   let offsetDist = 10 ;
   let getEvent = new MxCADUiPrEntity();
GetEvent.setMessage ('Specify offset object ');
   let event_id = await getEvent.go();
   if (!event_id) return;
   let event = (await event_id.getMcDbEntity()) as McDbCurve;
   let getoOffPt = new MxCADUiPrPoint();
GetoOffPt.setMessage ('specify offset point ');
   let offPt = await getoOffPt.go();
   if (!offPt) return;
   let objArr = event.offsetCurves(offsetDist, offPt);
   if (objArr.length() === 0) return;
   objArr.forEach((obj: McDbObject) => {
       MxCpp.getCurrentCAD().drawEntity(obj as McDbEntity);
   });

Inherited from

McDbCurve.offsetCurves


rotate

rotate(basePoint, dRotationAngle): boolean

Rotate object

Parameters

NameTypeDescription
BasePoint[McGePoint3d] (2d. McGePoint3d. md)Rotate the base point
DRotationAnglenumberRotation angle

Returns

boolean

Example

ts
import { McDbEntity, McGePoint3d } from 'mxcad'
const ent = new McDbEntity()
ent.rotate(new McGePoint3d(0,0,0), Math.PI)

Inherited from

McDbCurve.rotate


scaleEntity

scaleEntity(basePoint, dScaleFactor): boolean

Scaling objects

Parameters

NameTypeDescription
BasePoint[McGePoint3d] (2d. McGePoint3d. md)Scale Base Point
DScaleFactornumberscaling factor (<1 zoom out;>1 zoom in)

Returns

boolean

Example

ts
import { McDbEntity, McGePoint3d } from 'mxcad'
const ent = new McDbEntity()
ent.scaleEntity(new McGePoint3d(0,0,0), 0.5)

Inherited from

McDbCurve.scaleEntity


setCenter

setCenter(x, y, z?): void

Set the center coordinates.

Parameters

NameTypeDescription
XnumberThe x-coordinate of the center of the circle
YnumberThe y-coordinate of the center of the circle
z?NumberCenter z-coordinate

Returns

void

Example

ts
import { McDbArc } from "mxcad";
const arc = new McDbArc();
arc.setCenter(0,0,0)

setJson

setJson(str): boolean

Set a string in JSON format.

Parameters

NameTypeDescription
StrstringJSON formatted string

Returns

boolean

Is the setting successful.

Example

ts
import { McRxObject } from 'mxcad';

let obj = new McRxObject();
const res = obj.setJson('{"key": "value"}');
console.log(res)

Inherited from

McDbCurve.setJson


setxData

setxData(xdata): boolean

Set extended data for objects

Parameters

NameTypeDescription
Xdata[MxCADResbuf] (2d. MxCADResbuf. md)Extended data linked list

Returns

boolean

Example

ts
import { MxCADUiPrEntity, McDbEntity } from "mxcad";

//Set extended data
let selEntity = new MxCADUiPrEntity();
SelEntity. setMessage ("Select Object");
let id = await selEntity.go();
if (!id.isValid()) return;
let ent:McDbEntity = id.getMcDbEntity();
if (ent === null) return;
ent.setxData(new MxCADResbuf([{type:DxfCode.kExDataName,val:"DataName"},{type:DxfCode.kString,val:"yyyyy"}]));

Inherited from

McDbCurve.setxData


setxDataDouble

setxDataDouble(appName, val): boolean

Set the double value in the specified XData type of the entity

Parameters

NameTypeDescription
AppNamestringExtended Data Name
Valnumberdouble value

Returns

boolean

Boolean value

Example

ts
import { MxCADUiPrEntity, McDbEntity } from "mxcad";
let selEntity = new MxCADUiPrEntity();
SelEntity. setMessage ("Select Object");
let id = await selEntity.go();
if (!id.isValid()) return;
let ent:McDbEntity = id.getMcDbEntity();
if (ent === null) return;
const res = ent.setxDataDouble("DataName", 0);
if(res){
//Setting successful
}else{
//Setting failed
}

Inherited from

McDbCurve.setxDataDouble


setxDataLong

setxDataLong(appName, val): boolean

Set the long (integer) value in the specified XData type of the entity

Parameters

NameTypeDescription
AppNamestringExtended Data Name
Valnumberlong value

Returns

boolean

Long value

Example

ts
import { MxCADUiPrEntity, McDbEntity } from "mxcad";

let selEntity = new MxCADUiPrEntity();
SelEntity. setMessage ("Select Object");
let id = await selEntity.go();
if (!id.isValid()) return;
let ent:McDbEntity = id.getMcDbEntity();
if (ent === null) return;
const res = ent.setxDataLong("DataName", 123456);
if(res){
//Setting successful
}else{
//Setting failed
}

Inherited from

McDbCurve.setxDataLong


setxDataPoint

setxDataPoint(appName, val): boolean

Set the point object in the specified XData type of the entity

Parameters

NameTypeDescription
AppNamestringExtended Data Name
Val[McGePoint3d] (2d. McGePoint3d. md)Point Object

Returns

boolean

Obtain results and 3D point objects

Inherited from

McDbCurve.setxDataPoint


setxDataString

setxDataString(appName, val): boolean

Set XData information associated with a specific entity and set it in string form

Parameters

NameTypeDescription
AppNamestringExtended Data Name
Valstringstring value

Returns

boolean

Is the setting successful

Example

ts
import { MxCADUiPrEntity, McDbEntity } from "mxcad";
let selEntity = new MxCADUiPrEntity();
SelEntity. setMessage ("Select Object");
let id = await selEntity.go();
if (!id.isValid()) return;
let ent:McDbEntity = id.getMcDbEntity();
if (ent === null) return;
const res = ent.setxDataString("DataName", "xxxxx");
if(res){
//Setting successful
}else{
//Setting failed
}

Inherited from

McDbCurve.setxDataString


splitCurves

splitCurves(pts): McDbObjectArray

Detach Curves

Parameters

NameTypeDescription
PtsMcGePoint3d (2d. McGePoint3d. md)breakpoint array

Returns

McDbObjectArray

Interrupted curve array.

Example

ts
import { MxCpp } from "mxcad"
//PointsArr: breakpoint array event: McDbCurve
   event.splitCurves(PointsArr).forEach((e:McDbCurve, index:number) => {
       if(index % 2 === 0){
           MxCpp.getCurrentCAD().drawEntity(e as McDbEntity)
       }
   })

Inherited from

McDbCurve.splitCurves


splitCurvesFromParam

splitCurvesFromParam(params): McDbObjectArray

Break the curve based on the curve parameters

Parameters

NameTypeDescription
Paramsnumber []curve parameter array

Returns

McDbObjectArray

Interrupted curve array.

Inherited from

McDbCurve.splitCurvesFromParam


syncData

syncData(_toCpp?): boolean

Synchronize entity data. This method may be called after modifying the entity's attributes or attaching new data to ensure that all changes are correctly saved to the entity's database records.

Parameters

NameTypeDefault valueDescription
_toCppbooleantrueWhether to synchronize data

Returns

boolean

Example

ts
//Assuming ent is a valid instance object
const res = ent.syncData(true);
if(res){
//Synchronization successful
}else{
//Synchronization failed
}

Inherited from

McDbCurve.syncData


transformBy

transformBy(transformationMatrix): boolean

Transform object

Parameters

NameTypeDescription
TransformationMatrix[McGeMatrix3d] (2d. McGeMatrix3d. md)Transformation Matrix

Returns

boolean

Example

ts
import { McGeMatrix3d, McDbEntity, McGeVector3d} from 'mxcad'
 const ent = new McDbEntity()
   let matrix = new McGeMatrix3d();
matrix.setToTranslation(new McGeVector3d(20,0,0));// translation
   ent.transformBy(matrix);

Inherited from

McDbCurve.transformBy


unErase

unErase(): boolean

Anti delete object.

Returns

boolean

Example

ts
//Assuming obj is a database object
const res = obj.unErase();
console.log(res);

Inherited from

McDbCurve.unErase


updateDisplay

updateDisplay(): void

Display the updated display of the calling object

Returns

void

Example

ts
//Assuming ent is a valid instance object
ent.updateDisplay()

Inherited from

McDbCurve.updateDisplay