Skip to content

ArcCurveRef

A lightweight placeholder for an ArcCurve that hasn’t been fully loaded yet.

When you create circles or arcs inside a SketchupOperation, the API returns ArcCurveRef objects immediately, before SketchUp has finished processing the geometry. You can often pass these refs to other operation methods, but if you need the full ArcCurve instance, you can request it with entityForRef().

Think of a ref as a “claim ticket” — it guarantees an arc curve will exist after the operation commits, but it doesn’t carry the curve’s properties (center, radius, edges, etc.) yet. A ref is only valid inside the performOperation callback that created it — do not return it or use it after the operation commits.

let model = await SketchUpApi.getActiveModel();
await model.performOperation(async op => {
const center = [0, 0, 0];
const normal = [0, 0, 1];
const result = op.createCircle(
model, center, normal, 50, 24
);
const arcRef = result.curve;
// Resolve to get the full ArcCurve
const arc = await op.entityForRef(arcRef);
console.log(arc.radius);
// => 50
}, 'Create a circle');

SDK 2.23.0 Protocol 1.20.0

readonly sketchupId: SketchupId


readonly type: ArcCurve = EntityType.ArcCurve

get typeName(): string

Returns a named variant of the type field.

SDK 2.35.0

string