@itwin/editor-common 4.5.0-dev.3 → 4.5.0-dev.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +36 -1
- package/LICENSE.md +1 -1
- package/lib/cjs/EditorBuiltInIpc.d.ts +4 -542
- package/lib/cjs/EditorBuiltInIpc.d.ts.map +1 -1
- package/lib/cjs/EditorBuiltInIpc.js +1 -89
- package/lib/cjs/EditorBuiltInIpc.js.map +1 -1
- package/lib/cjs/EditorIpc.js.map +1 -1
- package/lib/cjs/editor-common.js.map +1 -1
- package/lib/esm/EditorBuiltInIpc.d.ts +4 -542
- package/lib/esm/EditorBuiltInIpc.d.ts.map +1 -1
- package/lib/esm/EditorBuiltInIpc.js +0 -88
- package/lib/esm/EditorBuiltInIpc.js.map +1 -1
- package/lib/esm/EditorIpc.js.map +1 -1
- package/lib/esm/editor-common.js.map +1 -1
- package/package.json +8 -8
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,41 @@
|
|
|
1
1
|
# Change Log - @itwin/editor-common
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Fri, 08 Mar 2024 15:58:53 GMT and should not be manually modified.
|
|
4
|
+
|
|
5
|
+
## 4.4.6
|
|
6
|
+
Fri, 08 Mar 2024 15:57:11 GMT
|
|
7
|
+
|
|
8
|
+
_Version update only_
|
|
9
|
+
|
|
10
|
+
## 4.4.5
|
|
11
|
+
Tue, 05 Mar 2024 20:37:18 GMT
|
|
12
|
+
|
|
13
|
+
_Version update only_
|
|
14
|
+
|
|
15
|
+
## 4.4.4
|
|
16
|
+
Fri, 01 Mar 2024 18:21:01 GMT
|
|
17
|
+
|
|
18
|
+
_Version update only_
|
|
19
|
+
|
|
20
|
+
## 4.4.3
|
|
21
|
+
Fri, 23 Feb 2024 21:26:07 GMT
|
|
22
|
+
|
|
23
|
+
_Version update only_
|
|
24
|
+
|
|
25
|
+
## 4.4.2
|
|
26
|
+
Fri, 16 Feb 2024 14:22:01 GMT
|
|
27
|
+
|
|
28
|
+
_Version update only_
|
|
29
|
+
|
|
30
|
+
## 4.4.1
|
|
31
|
+
Fri, 16 Feb 2024 14:17:48 GMT
|
|
32
|
+
|
|
33
|
+
_Version update only_
|
|
34
|
+
|
|
35
|
+
## 4.4.0
|
|
36
|
+
Mon, 12 Feb 2024 18:15:58 GMT
|
|
37
|
+
|
|
38
|
+
_Version update only_
|
|
4
39
|
|
|
5
40
|
## 4.3.3
|
|
6
41
|
Wed, 03 Jan 2024 19:28:38 GMT
|
package/LICENSE.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# MIT License
|
|
2
2
|
|
|
3
|
-
Copyright © 2017-
|
|
3
|
+
Copyright © 2017-2024 Bentley Systems, Incorporated. All rights reserved.
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
6
6
|
|
|
@@ -2,16 +2,14 @@
|
|
|
2
2
|
* @module Editing
|
|
3
3
|
*/
|
|
4
4
|
import { CompressedId64Set, Id64String, IModelStatus } from "@itwin/core-bentley";
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
5
|
+
import { Matrix3dProps, Range3dProps, TransformProps } from "@itwin/core-geometry";
|
|
6
|
+
import { EcefLocationProps, ElementGeometryBuilderParams, ElementGeometryInfo, ElementGeometryOpcode, GeometricElementProps, GeometryPartProps } from "@itwin/core-common";
|
|
7
7
|
import { EditCommandIpc } from "./EditorIpc";
|
|
8
8
|
/** Command ids for built in EditCommandIpc classes.
|
|
9
9
|
* @beta
|
|
10
10
|
*/
|
|
11
11
|
export declare const editorBuiltInCmdIds: {
|
|
12
12
|
cmdBasicManipulation: string;
|
|
13
|
-
/** @alpha */
|
|
14
|
-
cmdSolidModeling: string;
|
|
15
13
|
};
|
|
16
14
|
/** Optional criteria for requesting a GeometryStream from the backend.
|
|
17
15
|
* @beta
|
|
@@ -43,18 +41,16 @@ export interface BasicManipulationCommandIpc extends EditCommandIpc {
|
|
|
43
41
|
rotatePlacement(ids: CompressedId64Set, matrix: Matrix3dProps, aboutCenter: boolean): Promise<IModelStatus>;
|
|
44
42
|
/** Create and insert a new geometric element.
|
|
45
43
|
* @param props Properties for the new [GeometricElement]($backend)
|
|
46
|
-
* @param data Optional binary format GeometryStream representation used in lieu of [[GeometricElementProps.geom]] or [[GeometricElementProps.elementGeometryBuilderParams]].
|
|
47
44
|
* @see [GeometryStream]($docs/learning/common/geometrystream.md), [ElementGeometry]($common)
|
|
48
45
|
* @throws [[IModelError]] if unable to insert the element
|
|
49
46
|
*/
|
|
50
|
-
insertGeometricElement(props: GeometricElementProps
|
|
47
|
+
insertGeometricElement(props: GeometricElementProps): Promise<Id64String>;
|
|
51
48
|
/** Create and insert a new geometry part element.
|
|
52
49
|
* @param props Properties for the new [GeometryPart]($backend)
|
|
53
|
-
* @param data Optional binary format GeometryStream representation used in lieu of [[GeometryPartProps.geom]] or [[GeometryPartProps.elementGeometryBuilderParams]].
|
|
54
50
|
* @see [GeometryStream]($docs/learning/common/geometrystream.md), [ElementGeometry]($common)
|
|
55
51
|
* @throws [[IModelError]] if unable to insert the element
|
|
56
52
|
*/
|
|
57
|
-
insertGeometryPart(props: GeometryPartProps
|
|
53
|
+
insertGeometryPart(props: GeometryPartProps): Promise<Id64String>;
|
|
58
54
|
/** Update an existing geometric element.
|
|
59
55
|
* @param propsOrId Properties or element id to update for an existing [GeometricElement]($backend)
|
|
60
56
|
* @param data Optional binary format GeometryStream representation used in lieu of [[GeometricElementProps.geom]] or [[GeometricElementProps.elementGeometryBuilderParams]].
|
|
@@ -83,538 +79,4 @@ export interface BasicManipulationCommandIpc extends EditCommandIpc {
|
|
|
83
79
|
*/
|
|
84
80
|
updateEcefLocation(ecefLocation: EcefLocationProps): Promise<void>;
|
|
85
81
|
}
|
|
86
|
-
/** @alpha */
|
|
87
|
-
export interface ElementGeometryCacheFilter {
|
|
88
|
-
/** Optional lower limit on number of geometric primitives to accept */
|
|
89
|
-
minGeom?: number;
|
|
90
|
-
/** Optional upper limit on number of geometric primitives to accept */
|
|
91
|
-
maxGeom?: number;
|
|
92
|
-
/** Whether to accept geometry from parts. */
|
|
93
|
-
parts: boolean;
|
|
94
|
-
/** Whether to accept single curves and paths. */
|
|
95
|
-
curves: boolean;
|
|
96
|
-
/** Whether to accept loops, planar regions, open polyfaces, and sheet bodies. */
|
|
97
|
-
surfaces: boolean;
|
|
98
|
-
/** Whether to accept capped solids, closed polyfaces, and solid bodies. */
|
|
99
|
-
solids: boolean;
|
|
100
|
-
/** Whether to accept text, image graphics, etc. */
|
|
101
|
-
other: boolean;
|
|
102
|
-
}
|
|
103
|
-
/** @alpha */
|
|
104
|
-
export declare enum BRepEntityType {
|
|
105
|
-
/** Body consisting of at least one solid region */
|
|
106
|
-
Solid = 0,
|
|
107
|
-
/** Body consisting of connected sets of faces having edges that are shared by a maximum of two faces */
|
|
108
|
-
Sheet = 1,
|
|
109
|
-
/** Body consisting of connected sets of edges having vertices that are shared by a maximum of two edges */
|
|
110
|
-
Wire = 2,
|
|
111
|
-
/** Body can not be used to represent this geometric entry */
|
|
112
|
-
Invalid = 3
|
|
113
|
-
}
|
|
114
|
-
/** @alpha */
|
|
115
|
-
export interface ElementGeometryResultOptions {
|
|
116
|
-
/** If true, return geometry as data that can be converted to a render graphic */
|
|
117
|
-
wantGraphic?: true;
|
|
118
|
-
/** If true, return geometry as flatbuffer format data.
|
|
119
|
-
* The data is potentially large and may include brep entries that cannot be directly
|
|
120
|
-
* inspected or manipulated on the frontend, request only as needed. */
|
|
121
|
-
wantGeometry?: true;
|
|
122
|
-
/** If true, return geometry range. */
|
|
123
|
-
wantRange?: true;
|
|
124
|
-
/** If true, return geometry appearance information. */
|
|
125
|
-
wantAppearance?: true;
|
|
126
|
-
/** The chord tolerance to use when creating the graphic (default is 0.01) */
|
|
127
|
-
chordTolerance?: number;
|
|
128
|
-
/** Unique identifier for the render graphic request */
|
|
129
|
-
requestId?: string;
|
|
130
|
-
/** If true, a successful result updates the source element or is inserted as a new element when insertProps is supplied */
|
|
131
|
-
writeChanges?: true;
|
|
132
|
-
/** If specified, writeChanges inserts a new [GeometricElement]($backend) using these properties */
|
|
133
|
-
insertProps?: GeometricElementProps;
|
|
134
|
-
}
|
|
135
|
-
/** @alpha */
|
|
136
|
-
export interface ElementGeometryResultProps {
|
|
137
|
-
/** The element's geometry stream graphic data in world coordinates */
|
|
138
|
-
graphic?: Uint8Array;
|
|
139
|
-
/** The element's geometry stream information */
|
|
140
|
-
geometry?: ElementGeometryInfo;
|
|
141
|
-
/** The element's range box (available as ElementGeometryInfo.bbox when returning geometry) */
|
|
142
|
-
range?: Range3dProps;
|
|
143
|
-
/** The element's category (available as ElementGeometryInfo.category when returning geometry) */
|
|
144
|
-
categoryId?: Id64String;
|
|
145
|
-
/** The result element id (different than source id when requesting insert instead of update) */
|
|
146
|
-
elementId?: Id64String;
|
|
147
|
-
}
|
|
148
|
-
/** @alpha */
|
|
149
|
-
export declare enum SubEntityType {
|
|
150
|
-
/** A single bounded part of a surface */
|
|
151
|
-
Face = 0,
|
|
152
|
-
/** A single bounded part of a curve */
|
|
153
|
-
Edge = 1,
|
|
154
|
-
/** A single point */
|
|
155
|
-
Vertex = 2
|
|
156
|
-
}
|
|
157
|
-
/** @alpha */
|
|
158
|
-
export interface SubEntityProps {
|
|
159
|
-
/** Identifies the geometric primitive in the geometry stream that owns this sub-entity when there are more than one */
|
|
160
|
-
index?: number;
|
|
161
|
-
/** Identifies the type of sub-entity */
|
|
162
|
-
type: SubEntityType;
|
|
163
|
-
/** Identifies a face, edge, or vertex of the geometric primitive */
|
|
164
|
-
id: number;
|
|
165
|
-
}
|
|
166
|
-
/** @alpha */
|
|
167
|
-
export interface SubEntityLocationProps {
|
|
168
|
-
/** The information to identify the sub-entity */
|
|
169
|
-
subEntity: SubEntityProps;
|
|
170
|
-
/** The face, edge, or vertex location in world coordinates from closest point or locate request */
|
|
171
|
-
point?: XYZProps;
|
|
172
|
-
/** The face normal vector in world coordinates of the identified location on sub-entity */
|
|
173
|
-
normal?: XYZProps;
|
|
174
|
-
/** The face or edge u parameter of identified location on sub-entity */
|
|
175
|
-
uParam?: number;
|
|
176
|
-
/** The face v parameter of identified location on sub-entity */
|
|
177
|
-
vParam?: number;
|
|
178
|
-
}
|
|
179
|
-
/** @alpha */
|
|
180
|
-
export interface SubEntityAppearanceProps {
|
|
181
|
-
/** Category id for geometry. */
|
|
182
|
-
category: Id64String;
|
|
183
|
-
/** SubCategory id for geometry. */
|
|
184
|
-
subCategory?: Id64String;
|
|
185
|
-
/** Material id for geometry. */
|
|
186
|
-
material?: Id64String;
|
|
187
|
-
/** color of geometry. */
|
|
188
|
-
color?: ColorDefProps;
|
|
189
|
-
/** transparency of geometry. */
|
|
190
|
-
transparency?: number;
|
|
191
|
-
/** weight of geometry. */
|
|
192
|
-
weight?: number;
|
|
193
|
-
}
|
|
194
|
-
/** @alpha */
|
|
195
|
-
export interface SubEntityGeometryProps {
|
|
196
|
-
/** The face, edge, or vertex graphic data in world coordinates */
|
|
197
|
-
graphic?: Uint8Array;
|
|
198
|
-
/** The face, edge, or vertex geometry in world coordinates */
|
|
199
|
-
geometry?: ElementGeometryDataEntry;
|
|
200
|
-
/** The face or edge range box for the sub-entity geometry */
|
|
201
|
-
range?: Range3dProps;
|
|
202
|
-
/** The appearance information for the sub-entity geometry */
|
|
203
|
-
appearance?: SubEntityAppearanceProps;
|
|
204
|
-
}
|
|
205
|
-
/** @alpha */
|
|
206
|
-
export interface SubEntityFilter {
|
|
207
|
-
/** true to reject non-planar faces */
|
|
208
|
-
nonPlanarFaces?: true;
|
|
209
|
-
/** true to reject non-linear edges */
|
|
210
|
-
nonLinearEdges?: true;
|
|
211
|
-
/** true to reject laminar edges */
|
|
212
|
-
laminarEdges?: true;
|
|
213
|
-
/** true to reject smooth edges */
|
|
214
|
-
smoothEdges?: true;
|
|
215
|
-
/** true to reject smooth vertices */
|
|
216
|
-
smoothVertices?: true;
|
|
217
|
-
}
|
|
218
|
-
/** @alpha */
|
|
219
|
-
export interface LocateSubEntityProps {
|
|
220
|
-
/** The maximum number of face hits to return. Pass 0 to not pick faces. */
|
|
221
|
-
maxFace: number;
|
|
222
|
-
/** The maximum number of edge hits to return. Pass 0 to not pick edges. */
|
|
223
|
-
maxEdge: number;
|
|
224
|
-
/** The maximum number of vertex hits to return. Pass 0 to not pick vertices. */
|
|
225
|
-
maxVertex: number;
|
|
226
|
-
/** An edge will be picked if it is within this distance from the ray, a vertex twice this distance. */
|
|
227
|
-
maxDistance?: number;
|
|
228
|
-
/** When not locating faces, true to allow locate of back edges and vertices. */
|
|
229
|
-
hiddenEdgesVisible: boolean;
|
|
230
|
-
/** Optional filter to reject common types of faces, edges, and vertices. */
|
|
231
|
-
filter?: SubEntityFilter;
|
|
232
|
-
}
|
|
233
|
-
/** @alpha */
|
|
234
|
-
export interface ConnectedSubEntityProps {
|
|
235
|
-
/** Set to return edges comprising the single loop of this face that contains the supplied edge */
|
|
236
|
-
loopFace?: SubEntityProps;
|
|
237
|
-
/** Set to return edges that are connected and tangent to the supplied edge */
|
|
238
|
-
smoothEdges?: true;
|
|
239
|
-
/** Set to return faces that are smoothly connected to the supplied face */
|
|
240
|
-
smoothFaces?: true;
|
|
241
|
-
/** Set to return adjacent faces to the supplied face or limit smooth face propagation */
|
|
242
|
-
adjacentFaces?: true;
|
|
243
|
-
/** Set to include adjacent faces with identical surface geometry to the supplied face */
|
|
244
|
-
sameSurface?: true;
|
|
245
|
-
}
|
|
246
|
-
/** @alpha */
|
|
247
|
-
export interface EvaluatedFaceProps {
|
|
248
|
-
/** The face location in world coordinates of the supplied uv parameter */
|
|
249
|
-
point: XYZProps;
|
|
250
|
-
/** The face normal vector in world coordinates of the supplied uv parameter */
|
|
251
|
-
normal: XYZProps;
|
|
252
|
-
/** The first derivative with respect to u at the uv parameter */
|
|
253
|
-
uDir: XYZProps;
|
|
254
|
-
/** The first derivative with respect to v at the uv parameter */
|
|
255
|
-
vDir: XYZProps;
|
|
256
|
-
}
|
|
257
|
-
/** @alpha */
|
|
258
|
-
export interface EvaluatedEdgeProps {
|
|
259
|
-
/** The edge location in world coordinates of the supplied u parameter */
|
|
260
|
-
point: XYZProps;
|
|
261
|
-
/** The normalized curve tangent in world coordinates at the u parameter */
|
|
262
|
-
uDir: XYZProps;
|
|
263
|
-
}
|
|
264
|
-
/** @alpha */
|
|
265
|
-
export interface EvaluatedVertexProps {
|
|
266
|
-
/** The vertex location in world coordinates */
|
|
267
|
-
point: XYZProps;
|
|
268
|
-
}
|
|
269
|
-
/** @alpha */
|
|
270
|
-
export interface FaceParameterRangeProps {
|
|
271
|
-
/** The u parameter range of the face */
|
|
272
|
-
uRange: Range1dProps;
|
|
273
|
-
/** The v parameter range of the face */
|
|
274
|
-
vRange: Range1dProps;
|
|
275
|
-
}
|
|
276
|
-
/** @alpha */
|
|
277
|
-
export interface EdgeParameterRangeProps {
|
|
278
|
-
/** The u parameter range of the edge */
|
|
279
|
-
uRange: Range1dProps;
|
|
280
|
-
}
|
|
281
|
-
/** @alpha */
|
|
282
|
-
export interface PointInsideResultProps {
|
|
283
|
-
/** Identifies the geometric primitive in the geometry stream */
|
|
284
|
-
index: number;
|
|
285
|
-
/** Result status */
|
|
286
|
-
inside: boolean;
|
|
287
|
-
}
|
|
288
|
-
/** @alpha */
|
|
289
|
-
export declare enum BooleanMode {
|
|
290
|
-
/** Unite target with one or more tool entities */
|
|
291
|
-
Unite = 0,
|
|
292
|
-
/** Subtract one or more tool entities from target entity */
|
|
293
|
-
Subtract = 1,
|
|
294
|
-
/** Intersect target with one or more tool entities */
|
|
295
|
-
Intersect = 2
|
|
296
|
-
}
|
|
297
|
-
/** @alpha */
|
|
298
|
-
export interface BooleanOperationProps {
|
|
299
|
-
/** Specifies boolean mode */
|
|
300
|
-
mode: BooleanMode;
|
|
301
|
-
/** The elements to use as tool bodies (consumed in boolean) */
|
|
302
|
-
tools: Id64String | Id64String[];
|
|
303
|
-
}
|
|
304
|
-
/** @alpha */
|
|
305
|
-
export interface SewSheetProps {
|
|
306
|
-
/** The elements to use as tool bodies (consumed in boolean) */
|
|
307
|
-
tools: Id64String | Id64String[];
|
|
308
|
-
}
|
|
309
|
-
/** @alpha */
|
|
310
|
-
export interface ThickenSheetProps {
|
|
311
|
-
/** The offset distance in the direction of the sheet body face normal */
|
|
312
|
-
front: number;
|
|
313
|
-
/** The offset distance in the opposite direction of the sheet body face normal */
|
|
314
|
-
back: number;
|
|
315
|
-
}
|
|
316
|
-
/** @alpha */
|
|
317
|
-
export interface OffsetFacesProps {
|
|
318
|
-
/** The faces to offset. */
|
|
319
|
-
faces: SubEntityProps | SubEntityProps[];
|
|
320
|
-
/** The offset to apply to all faces, or the offset for each face */
|
|
321
|
-
distances: number | number[];
|
|
322
|
-
/** Set to use faces only to identify which geometric primitives to offset, same offset applied to all faces of body */
|
|
323
|
-
offsetAll?: true;
|
|
324
|
-
}
|
|
325
|
-
/** @alpha */
|
|
326
|
-
export interface OffsetEdgesProps {
|
|
327
|
-
/** The edges to offset with the first edge used as the reference edge for the offset distance. Edges that don't share a face with the reference edge are ignored. */
|
|
328
|
-
edges: SubEntityProps | SubEntityProps[];
|
|
329
|
-
/** The offset direction relative to the reference edge */
|
|
330
|
-
direction: XYZProps;
|
|
331
|
-
/** The offset distance for each edge */
|
|
332
|
-
distance: number;
|
|
333
|
-
/** Whether to automatically continue blend along connected and tangent edges that aren't explicitly specified. */
|
|
334
|
-
propagateSmooth: boolean;
|
|
335
|
-
}
|
|
336
|
-
/** When shelling, a positive offset goes outwards (in the direction of the surface normal),
|
|
337
|
-
* a negative offset is inwards, and a face with zero offset will be pierced/removed.
|
|
338
|
-
* @alpha
|
|
339
|
-
*/
|
|
340
|
-
export interface HollowFacesProps {
|
|
341
|
-
/** The offset distance to apply to any face not specifically included in the faces array */
|
|
342
|
-
defaultDistance: number;
|
|
343
|
-
/** The faces to offset by values other than the default offset distance */
|
|
344
|
-
faces: SubEntityProps | SubEntityProps[];
|
|
345
|
-
/** The offset to apply to all specified faces, or the offset for each face in array */
|
|
346
|
-
distances: number | number[];
|
|
347
|
-
}
|
|
348
|
-
/** @alpha */
|
|
349
|
-
export interface SweepFacesProps {
|
|
350
|
-
/** Optional faces to be swept. Leave undefined to sweep a wire or sheet body. */
|
|
351
|
-
faces?: SubEntityProps | SubEntityProps[];
|
|
352
|
-
/** A scaled vector to define the sweep direction and distance */
|
|
353
|
-
path: XYZProps;
|
|
354
|
-
}
|
|
355
|
-
/** @alpha */
|
|
356
|
-
export interface SpinFacesProps {
|
|
357
|
-
/** Optional faces to be spun. Leave undefined to spin a wire or sheet body. */
|
|
358
|
-
faces?: SubEntityProps | SubEntityProps[];
|
|
359
|
-
/** The axis origin */
|
|
360
|
-
origin: XYZProps;
|
|
361
|
-
/** The axis direction */
|
|
362
|
-
direction: XYZProps;
|
|
363
|
-
/** The sweep angle (value in range of -2pi to 2pi), Full sweep if undefined. */
|
|
364
|
-
angle?: AngleProps;
|
|
365
|
-
}
|
|
366
|
-
/** @alpha */
|
|
367
|
-
export interface DeleteSubEntityProps {
|
|
368
|
-
/** The sub-entities to remove. All sub-entities should be of the same [[SubEntityType]]. [[SubEntityType.Vertex]] unsupported. */
|
|
369
|
-
subEntities: SubEntityProps | SubEntityProps[];
|
|
370
|
-
}
|
|
371
|
-
/** @alpha */
|
|
372
|
-
export interface TransformSubEntityProps {
|
|
373
|
-
/** The sub-entities to transform. All sub-entities should be of the same [[SubEntityType]]. */
|
|
374
|
-
subEntities: SubEntityProps | SubEntityProps[];
|
|
375
|
-
/** The transform to apply to all sub-entities, or the transforms for each sub-entity */
|
|
376
|
-
transforms: TransformProps[];
|
|
377
|
-
}
|
|
378
|
-
/** @alpha */
|
|
379
|
-
export interface BlendEdgesProps {
|
|
380
|
-
/** The edges to blend */
|
|
381
|
-
edges: SubEntityProps | SubEntityProps[];
|
|
382
|
-
/** The radius to apply to all edges, or the radius for each edge */
|
|
383
|
-
radii: number | number[];
|
|
384
|
-
/** Whether to automatically continue blend along connected and tangent edges that aren't explicitly specified. */
|
|
385
|
-
propagateSmooth: boolean;
|
|
386
|
-
}
|
|
387
|
-
/** @alpha */
|
|
388
|
-
export declare enum ChamferMode {
|
|
389
|
-
/** Chamfer ranges */
|
|
390
|
-
Ranges = 0,
|
|
391
|
-
/** Chamfer length. Specify lengths using values1, values2 is unused. */
|
|
392
|
-
Length = 1,
|
|
393
|
-
/** Right/Left distances. Equal distance if values2 is undefined. */
|
|
394
|
-
Distances = 2,
|
|
395
|
-
/** Right distance and angle (radians) */
|
|
396
|
-
DistanceAngle = 3,
|
|
397
|
-
/** Angle (radians) and left distance */
|
|
398
|
-
AngleDistance = 4
|
|
399
|
-
}
|
|
400
|
-
/** @alpha */
|
|
401
|
-
export interface ChamferEdgesProps {
|
|
402
|
-
/** Specifies chamfer type and determines how values1 and values2 are interpreted and used */
|
|
403
|
-
mode: ChamferMode;
|
|
404
|
-
/** The edges to chamfer */
|
|
405
|
-
edges: SubEntityProps | SubEntityProps[];
|
|
406
|
-
/** The chamfer value to apply to all edges, or the value for each edge. Meaning varies by ChamferMode. */
|
|
407
|
-
values1: number | number[];
|
|
408
|
-
/** The chamfer value to apply to all edges, or the value for each edge. Meaning varies by ChamferMode, unused for (Unused for ChamferMode.Length. */
|
|
409
|
-
values2?: number | number[];
|
|
410
|
-
/** Whether to automatically continue blend along connected and tangent edges that aren't explicitly specified. */
|
|
411
|
-
propagateSmooth: boolean;
|
|
412
|
-
}
|
|
413
|
-
/** @alpha */
|
|
414
|
-
export declare enum CutDirectionMode {
|
|
415
|
-
/** Remove material in direction of surface normal */
|
|
416
|
-
Forward = 0,
|
|
417
|
-
/** Remove material in opposite direction of surface normal */
|
|
418
|
-
Backward = 1,
|
|
419
|
-
/** Remove material in both directions */
|
|
420
|
-
Both = 2,
|
|
421
|
-
/** Choose forward or backward from tool and target hint points */
|
|
422
|
-
Auto = 3
|
|
423
|
-
}
|
|
424
|
-
/** @alpha */
|
|
425
|
-
export declare enum CutDepthMode {
|
|
426
|
-
/** Cut extends through entire solid */
|
|
427
|
-
All = 0,
|
|
428
|
-
/** Cut extends to a specified depth */
|
|
429
|
-
Blind = 1
|
|
430
|
-
}
|
|
431
|
-
/** @alpha */
|
|
432
|
-
export declare enum ProfileClosure {
|
|
433
|
-
/** Close by extending end tangents to point of intersection or outside range of target */
|
|
434
|
-
Natural = 0,
|
|
435
|
-
/** Whether to reverse the natural closure direction */
|
|
436
|
-
Reverse = 1,
|
|
437
|
-
/** Choose natural or reverse closure direction based on tool and target hint points */
|
|
438
|
-
Auto = 2
|
|
439
|
-
}
|
|
440
|
-
/** @alpha */
|
|
441
|
-
export interface CutProps {
|
|
442
|
-
/** The element to use as the cutting profile */
|
|
443
|
-
profile: Id64String;
|
|
444
|
-
/** Sweep direction relative to the sheet body normal of the cut profile. Default CutDirectionMode.Both */
|
|
445
|
-
direction?: CutDirectionMode;
|
|
446
|
-
/** Extend cut through the entire target body or only create a pocket of fixed depth. Default CutDepthMode.All */
|
|
447
|
-
depth?: CutDepthMode;
|
|
448
|
-
/** Depth of cut for CutDepthMode.Blind */
|
|
449
|
-
distance?: number;
|
|
450
|
-
/** Whether to remove material outside profile instead of inside */
|
|
451
|
-
outside?: true;
|
|
452
|
-
/** Whether to attempt to close open profiles according to specified closure option */
|
|
453
|
-
closeOpen?: ProfileClosure;
|
|
454
|
-
/** The normal to use when closing an open path without a well defined normal, ex. a single line segment */
|
|
455
|
-
defaultNormal?: XYZProps;
|
|
456
|
-
/** Hint point on target for auto direction and closure options. Identifies which side of profile normal to keep material for. */
|
|
457
|
-
targetPoint?: XYZProps;
|
|
458
|
-
/** Hint point on tool for auto direction and closure options. Identifies outside of profile closure to keep material for. */
|
|
459
|
-
toolPoint?: XYZProps;
|
|
460
|
-
/** Whether to keep the cutting profile or delete it */
|
|
461
|
-
keepProfile?: true;
|
|
462
|
-
}
|
|
463
|
-
/** @alpha */
|
|
464
|
-
export declare enum EmbossDirectionMode {
|
|
465
|
-
/** Material is added in the direction of surface normal when creating a pad. */
|
|
466
|
-
Forward = 0,
|
|
467
|
-
/** Material is added in the opposite direction of surface normal when creating a pad. */
|
|
468
|
-
Backward = 1,
|
|
469
|
-
/** Choose forward or backward from target hint point */
|
|
470
|
-
Auto = 2
|
|
471
|
-
}
|
|
472
|
-
/** @alpha */
|
|
473
|
-
export interface EmbossProps {
|
|
474
|
-
/** The element to use in creating a pad or pocket, must be planar region or sheet body */
|
|
475
|
-
profile: Id64String;
|
|
476
|
-
/** Emboss direction, determines which side of profile normal material is added on. Default EmbossDirectionMode.Forward */
|
|
477
|
-
direction?: EmbossDirectionMode;
|
|
478
|
-
/** Hint point on target for auto direction. */
|
|
479
|
-
targetPoint?: XYZProps;
|
|
480
|
-
/** Whether to keep the emboss profile or delete it */
|
|
481
|
-
keepProfile?: true;
|
|
482
|
-
}
|
|
483
|
-
/** @alpha */
|
|
484
|
-
export interface ImprintProps {
|
|
485
|
-
/** The source of the geometry to imprint, can be a path, planar region, sheet, solid, or edges to offset. */
|
|
486
|
-
imprint: Id64String | SubEntityProps[] | ElementGeometryDataEntry;
|
|
487
|
-
/** Optional project direction when imprinting a curve, uses curvature if undefined. */
|
|
488
|
-
direction?: XYZProps;
|
|
489
|
-
/** The target face sub-entity to be imprinted, uses target body if undefined. Required when supplying offset edges. */
|
|
490
|
-
face?: SubEntityProps;
|
|
491
|
-
/** Offset distance when imprinting offset edges onto a face. First edge used as reference. */
|
|
492
|
-
distance?: number;
|
|
493
|
-
extend?: true;
|
|
494
|
-
/** Whether to keep the imprint element or delete it */
|
|
495
|
-
keepProfile?: true;
|
|
496
|
-
}
|
|
497
|
-
/** @alpha */
|
|
498
|
-
export interface SweepPathProps {
|
|
499
|
-
/** The element to use as the open or closed path to sweep along. */
|
|
500
|
-
path: Id64String;
|
|
501
|
-
/** true to keep profile at a fixed angle to global axis instead of path tangent (and lock direction). */
|
|
502
|
-
alignParallel?: true;
|
|
503
|
-
/** true to force a sheet body to be created from a closed profile which would normally produce a solid body. */
|
|
504
|
-
createSheet?: true;
|
|
505
|
-
/** Optionally keep profile at a fixed angle relative to the path tangent projected into a plane perpendicular to the lock direction. Only valid when alignParallel is undefined. */
|
|
506
|
-
lockDirection?: XYZProps;
|
|
507
|
-
/** Optionally spin profile as it moves along the path. */
|
|
508
|
-
twistAngle?: AngleProps;
|
|
509
|
-
/** Optionally scale profile as it moves along the path. */
|
|
510
|
-
scale?: number;
|
|
511
|
-
/** The profile point to scale about, required when applying scale. */
|
|
512
|
-
scalePoint?: XYZProps;
|
|
513
|
-
/** Whether to keep the path element or delete it */
|
|
514
|
-
keepPath?: true;
|
|
515
|
-
}
|
|
516
|
-
/** @alpha */
|
|
517
|
-
export interface LoftProps {
|
|
518
|
-
/** The tool cross sections (planar paths and regions) to loft through. */
|
|
519
|
-
tools: Id64String | Id64String[];
|
|
520
|
-
/** An optional set of guide curves for controlling the loft. */
|
|
521
|
-
guides?: Id64String | Id64String[];
|
|
522
|
-
/** true if start profile is also used as end profile to create a periodic result in loft direction. */
|
|
523
|
-
periodic?: true;
|
|
524
|
-
/** true to order curves by their relative location instead of preserving input order. */
|
|
525
|
-
orderCurves?: true;
|
|
526
|
-
/** true to orient curve directions and normals. */
|
|
527
|
-
orientCurves?: true;
|
|
528
|
-
/** Whether to keep the profile elements or delete them */
|
|
529
|
-
keepTools?: true;
|
|
530
|
-
/** Whether to keep the guide elements or delete them */
|
|
531
|
-
keepGuides?: true;
|
|
532
|
-
}
|
|
533
|
-
/** @alpha */
|
|
534
|
-
export interface SolidModelingCommandIpc extends EditCommandIpc {
|
|
535
|
-
/** Clear geometry cache for all elements */
|
|
536
|
-
clearElementGeometryCache(): Promise<void>;
|
|
537
|
-
/** Create new geometry cache entries for the supplied geometric element, or check existing an cache against supplied filter. */
|
|
538
|
-
createElementGeometryCache(id: Id64String, filter?: ElementGeometryCacheFilter): Promise<boolean>;
|
|
539
|
-
/** Report the type of brep entity that would be created for each entry referenced by the supplied geometric element. */
|
|
540
|
-
summarizeElementGeometryCache(id: Id64String): Promise<BRepEntityType[] | undefined>;
|
|
541
|
-
/** Get the geometric representation of a sub-entity in flatbuffer format or graphic data. */
|
|
542
|
-
getSubEntityGeometry(id: Id64String, subEntity: SubEntityProps, opts: Omit<ElementGeometryResultOptions, "writeChanges" | "insertProps">): Promise<SubEntityGeometryProps | undefined>;
|
|
543
|
-
/** Get face uv parameter range, or edge u parameter range */
|
|
544
|
-
getSubEntityParameterRange(id: Id64String, subEntity: SubEntityProps): Promise<FaceParameterRangeProps | EdgeParameterRangeProps | undefined>;
|
|
545
|
-
/** Evaluate location on face, edge, or vertex. uParam and vParam required for face, uParam required for edge. */
|
|
546
|
-
evaluateSubEntity(id: Id64String, subEntity: SubEntityProps, uParam?: number, vParam?: number): Promise<EvaluatedFaceProps | EvaluatedEdgeProps | EvaluatedVertexProps | undefined>;
|
|
547
|
-
/** Return whether the supplied face has a planar surface */
|
|
548
|
-
isPlanarFace(id: Id64String, subEntity: SubEntityProps): Promise<boolean>;
|
|
549
|
-
/** Return whether the angle between the normals of the supplied edge's faces never exceeds the internal smooth angle tolerance along the length of the edge */
|
|
550
|
-
isSmoothEdge(id: Id64String, subEntity: SubEntityProps): Promise<boolean>;
|
|
551
|
-
/** Return whether the supplied sub-entity is a laminar edge of a sheet body, i.e. boundary of a single face */
|
|
552
|
-
isLaminarEdge(id: Id64String, subEntity: SubEntityProps): Promise<boolean>;
|
|
553
|
-
/** Return whether the supplied sub-entity is a linear edge */
|
|
554
|
-
isLinearEdge(id: Id64String, subEntity: SubEntityProps): Promise<boolean>;
|
|
555
|
-
/** Return whether the supplied sub-entity is a redundant edge (containing faces share surface) */
|
|
556
|
-
isRedundantEdge(id: Id64String, subEntity: SubEntityProps): Promise<boolean>;
|
|
557
|
-
/** Return whether the angle between the normals of the supplied vertices's edges never exceeds the internal smooth angle tolerance along the length of the edge */
|
|
558
|
-
isSmoothVertex(id: Id64String, subEntity: SubEntityProps): Promise<boolean>;
|
|
559
|
-
/** Return whether the supplied geometric primitive index is a disjoint body */
|
|
560
|
-
isDisjointBody(id: Id64String, index: number): Promise<boolean>;
|
|
561
|
-
/** Return whether the supplied geometric primitive index is a planar path or region */
|
|
562
|
-
isPlanarBody(id: Id64String, index: number): Promise<boolean>;
|
|
563
|
-
/** Return whether the supplied geometric primitive index is a sheet body with a single planar face */
|
|
564
|
-
isSingleFacePlanarSheet(id: Id64String, index: number): Promise<boolean>;
|
|
565
|
-
/** Return whether the supplied geometric primitive index is a sheet or solid entity that has all planar faces */
|
|
566
|
-
hasOnlyPlanarFaces(id: Id64String, index: number): Promise<boolean>;
|
|
567
|
-
/** Return whether the supplied geometric primitive index is a body with any edge that is non-linear or any face that is non-planar */
|
|
568
|
-
hasCurvedFaceOrEdge(id: Id64String, index: number): Promise<boolean>;
|
|
569
|
-
/** Get sub-entities of the requested type for the supplied element */
|
|
570
|
-
getBodySubEntities(id: Id64String, type: SubEntityType, firstOnly?: true): Promise<SubEntityProps[] | undefined>;
|
|
571
|
-
/** Get related sub-entities for the supplied sub-entity. For example, get the array of faces containing a supplied edge. */
|
|
572
|
-
getConnectedSubEntities(id: Id64String, subEntity: SubEntityProps, type: SubEntityType, opts?: ConnectedSubEntityProps): Promise<SubEntityProps[] | undefined>;
|
|
573
|
-
/** Identify face, edge, and vertex sub-entities from the supplied element by their proximity to a ray. */
|
|
574
|
-
locateSubEntities(id: Id64String, spacePoint: XYZProps, direction: XYZProps, opts: LocateSubEntityProps): Promise<SubEntityLocationProps[] | undefined>;
|
|
575
|
-
/** Find the ray intersection with a face */
|
|
576
|
-
locateFace(id: Id64String, subEntity: SubEntityProps, point: XYZProps, direction: XYZProps): Promise<SubEntityLocationProps[] | undefined>;
|
|
577
|
-
/** Find the closest sub-entity from the supplied element to a given point. */
|
|
578
|
-
getClosestSubEntity(id: Id64String, testPoint: XYZProps): Promise<SubEntityLocationProps | undefined>;
|
|
579
|
-
/** Find the closest face from the supplied element to a given point. */
|
|
580
|
-
getClosestFace(id: Id64String, testPoint: XYZProps, preferredDirection?: XYZProps): Promise<SubEntityLocationProps | undefined>;
|
|
581
|
-
/** Find the closest point on a face or edge to a given point */
|
|
582
|
-
getClosestPoint(id: Id64String, subEntity: SubEntityProps, point: XYZProps): Promise<SubEntityLocationProps | undefined>;
|
|
583
|
-
/** Test if a point is inside or on the boundary of any body from the supplied element */
|
|
584
|
-
isPointInside(id: Id64String, point: XYZProps): Promise<PointInsideResultProps[] | undefined>;
|
|
585
|
-
/** Perform the specified boolean operation between the target element and one or more tool elements. */
|
|
586
|
-
booleanOperation(id: Id64String, params: BooleanOperationProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
587
|
-
/** Sew the sheet bodies from the target element and one or more tool elements together by joining those that share edges in common. */
|
|
588
|
-
sewSheets(id: Id64String, params: SewSheetProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
589
|
-
/** Modify sheet bodies from the supplied element by thickening to create solids bodies. */
|
|
590
|
-
thickenSheets(id: Id64String, params: ThickenSheetProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
591
|
-
/** Modify solid bodies from the supplied element by subtracting a cutting sheet tool body swept according to the specified cut direction and depth. */
|
|
592
|
-
cutSolid(id: Id64String, params: CutProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
593
|
-
/** Modify solid and sheet bodies from the supplied element by creating a pad or pocket according to the specified emboss options. */
|
|
594
|
-
embossBody(id: Id64String, params: EmbossProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
595
|
-
/** Modify solid and sheet bodies from the supplied element by imprinting new edges according to the specified imprint options. */
|
|
596
|
-
imprintBody(id: Id64String, params: ImprintProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
597
|
-
/** Create a new sheet or solid body by sweeping a cross section profile along a path. */
|
|
598
|
-
sweepAlongPath(id: Id64String, params: SweepPathProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
599
|
-
/** Create a new sheet or solid body by lofting through a set of profiles. */
|
|
600
|
-
loftProfiles(id: Id64String, params: LoftProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
601
|
-
/** Modify solid and sheet bodies by offsetting selected faces. */
|
|
602
|
-
offsetFaces(id: Id64String, params: OffsetFacesProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
603
|
-
/** Modify solid and sheet bodies by offsetting selected edges. */
|
|
604
|
-
offsetEdges(id: Id64String, params: OffsetEdgesProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
605
|
-
/** Modify solid bodies by hollowing selected faces. */
|
|
606
|
-
hollowFaces(id: Id64String, params: HollowFacesProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
607
|
-
/** Modify solid and sheet bodies by sweeping selected faces along a path vector. */
|
|
608
|
-
sweepFaces(id: Id64String, params: SweepFacesProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
609
|
-
/** Modify solid and sheet bodies by spinning selected faces along an arc specified by axis of revolution and sweep angle. */
|
|
610
|
-
spinFaces(id: Id64String, params: SpinFacesProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
611
|
-
/** Modify the target solid or sheet body by removing selected faces oe edges. */
|
|
612
|
-
deleteSubEntities(id: Id64String, params: DeleteSubEntityProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
613
|
-
/** Modify the target solid or sheet body by transforming selected faces, edges, or vertices. */
|
|
614
|
-
transformSubEntities(id: Id64String, params: TransformSubEntityProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
615
|
-
/** Modify the specified edges by changing them into faces having the requested blending surface geometry. */
|
|
616
|
-
blendEdges(id: Id64String, params: BlendEdgesProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
617
|
-
/** Modify the specified edges by changing them into faces having the requested chamfer surface geometry. */
|
|
618
|
-
chamferEdges(id: Id64String, params: ChamferEdgesProps, opts: ElementGeometryResultOptions): Promise<ElementGeometryResultProps | undefined>;
|
|
619
|
-
}
|
|
620
82
|
//# sourceMappingURL=EditorBuiltInIpc.d.ts.map
|