Allow the origin of rotation to be specified (#7608)
* pass axis origin to endpoint * fmt * fix lint errors * update sim tests with new transform endpoint * added missed files * revert cargo.toml * implement review requests * fmt * revert unnecessary custom origin
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 84 KiB |
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 0 B |
Before Width: | Height: | Size: 128 KiB After Width: | Height: | Size: 0 B |
4
rust/Cargo.lock
generated
@ -2071,9 +2071,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "kittycad-modeling-cmds"
|
||||
version = "0.2.124"
|
||||
version = "0.2.125"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "221aa4670a7ad7dc8f1e4e0f9990bf3cff0a64417eb76493bafe5bbbc1f8350a"
|
||||
checksum = "cfd09d95f8bbeb090d4d1137c9bf421eb75763f7a30e4a9e8eefa249ddf20bd3"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"chrono",
|
||||
|
@ -36,7 +36,7 @@ dashmap = { version = "6.1.0" }
|
||||
http = "1"
|
||||
indexmap = "2.9.0"
|
||||
kittycad = { version = "0.3.37", default-features = false, features = ["js", "requests"] }
|
||||
kittycad-modeling-cmds = { version = "0.2.124", features = ["ts-rs", "websocket"] }
|
||||
kittycad-modeling-cmds = { version = "0.2.125", features = ["ts-rs", "websocket"] }
|
||||
lazy_static = "1.5.0"
|
||||
miette = "7.6.0"
|
||||
pyo3 = { version = "0.24.2" }
|
||||
@ -60,6 +60,6 @@ lossy_float_literal = "warn"
|
||||
result_large_err = "allow"
|
||||
|
||||
# Example: how to point modeling-app at a different repo (e.g. a branch or a local clone)
|
||||
#[patch.crates-io]
|
||||
#kittycad-modeling-cmds = { path = "../../../modeling-api/modeling-cmds" }
|
||||
#kittycad-modeling-session = { path = "../../../modeling-api/modeling-session" }
|
||||
# [patch.crates-io]
|
||||
# kittycad-modeling-cmds = { path = "../../modeling-api/modeling-cmds/" }
|
||||
# kittycad-modeling-session = { path = "../../modeling-api/modeling-session" }
|
||||
|
@ -58,4 +58,11 @@ impl Axis3dOrPoint3d {
|
||||
Axis3dOrPoint3d::Point(point) => point.clone(),
|
||||
}
|
||||
}
|
||||
|
||||
pub fn axis_origin(&self) -> Option<[TyF64; 3]> {
|
||||
match self {
|
||||
Axis3dOrPoint3d::Axis { origin, .. } => Some(origin.clone()),
|
||||
Axis3dOrPoint3d::Point(..) => None,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -5,7 +5,7 @@ use kcmc::{
|
||||
ModelingCmd, each_cmd as mcmd,
|
||||
length_unit::LengthUnit,
|
||||
shared,
|
||||
shared::{Point3d, Point4d},
|
||||
shared::{OriginType, Point3d},
|
||||
};
|
||||
use kittycad_modeling_cmds as kcmc;
|
||||
|
||||
@ -18,6 +18,16 @@ use crate::{
|
||||
std::{Args, args::TyF64, axis_or_reference::Axis3dOrPoint3d},
|
||||
};
|
||||
|
||||
fn transform_by<T>(property: T, set: bool, is_local: bool, origin: Option<OriginType>) -> shared::TransformBy<T> {
|
||||
shared::TransformBy {
|
||||
property,
|
||||
set,
|
||||
#[expect(deprecated)]
|
||||
is_local,
|
||||
origin,
|
||||
}
|
||||
}
|
||||
|
||||
/// Scale a solid or a sketch.
|
||||
pub async fn scale(exec_state: &mut ExecState, args: Args) -> Result<KclValue, KclError> {
|
||||
let objects = args.get_unlabeled_kw_arg(
|
||||
@ -70,6 +80,13 @@ async fn inner_scale(
|
||||
exec_state.flush_batch_for_solids((&args).into(), solids).await?;
|
||||
}
|
||||
|
||||
let is_global = global.unwrap_or(false);
|
||||
let origin = if is_global {
|
||||
Some(OriginType::Global)
|
||||
} else {
|
||||
Some(OriginType::Local)
|
||||
};
|
||||
|
||||
let mut objects = objects.clone();
|
||||
for object_id in objects.ids(&args.ctx).await? {
|
||||
exec_state
|
||||
@ -78,15 +95,16 @@ async fn inner_scale(
|
||||
ModelingCmd::from(mcmd::SetObjectTransform {
|
||||
object_id,
|
||||
transforms: vec![shared::ComponentTransform {
|
||||
scale: Some(shared::TransformBy::<Point3d<f64>> {
|
||||
property: Point3d {
|
||||
scale: Some(transform_by(
|
||||
Point3d {
|
||||
x: x.unwrap_or(1.0),
|
||||
y: y.unwrap_or(1.0),
|
||||
z: z.unwrap_or(1.0),
|
||||
},
|
||||
set: false,
|
||||
is_local: !global.unwrap_or(false),
|
||||
}),
|
||||
false,
|
||||
!is_global,
|
||||
origin,
|
||||
)),
|
||||
translate: None,
|
||||
rotate_rpy: None,
|
||||
rotate_angle_axis: None,
|
||||
@ -142,6 +160,13 @@ async fn inner_translate(
|
||||
exec_state.flush_batch_for_solids((&args).into(), solids).await?;
|
||||
}
|
||||
|
||||
let is_global = global.unwrap_or(false);
|
||||
let origin = if is_global {
|
||||
Some(OriginType::Global)
|
||||
} else {
|
||||
Some(OriginType::Local)
|
||||
};
|
||||
|
||||
let mut objects = objects.clone();
|
||||
for object_id in objects.ids(&args.ctx).await? {
|
||||
exec_state
|
||||
@ -150,15 +175,16 @@ async fn inner_translate(
|
||||
ModelingCmd::from(mcmd::SetObjectTransform {
|
||||
object_id,
|
||||
transforms: vec![shared::ComponentTransform {
|
||||
translate: Some(shared::TransformBy::<Point3d<LengthUnit>> {
|
||||
property: shared::Point3d {
|
||||
translate: Some(transform_by(
|
||||
shared::Point3d {
|
||||
x: LengthUnit(x.as_ref().map(|t| t.to_mm()).unwrap_or_default()),
|
||||
y: LengthUnit(y.as_ref().map(|t| t.to_mm()).unwrap_or_default()),
|
||||
z: LengthUnit(z.as_ref().map(|t| t.to_mm()).unwrap_or_default()),
|
||||
},
|
||||
set: false,
|
||||
is_local: !global.unwrap_or(false),
|
||||
}),
|
||||
false,
|
||||
!is_global,
|
||||
origin,
|
||||
)),
|
||||
scale: None,
|
||||
rotate_rpy: None,
|
||||
rotate_angle_axis: None,
|
||||
@ -193,6 +219,7 @@ pub async fn rotate(exec_state: &mut ExecState, args: Args) -> Result<KclValue,
|
||||
]),
|
||||
exec_state,
|
||||
)?;
|
||||
let origin = axis.clone().map(|a| a.axis_origin()).unwrap_or_default();
|
||||
let axis = axis.map(|a| a.to_point3d());
|
||||
let angle: Option<TyF64> = args.get_kw_arg_opt("angle", &RuntimeType::degrees(), exec_state)?;
|
||||
let global = args.get_kw_arg_opt("global", &RuntimeType::bool(), exec_state)?;
|
||||
@ -286,6 +313,7 @@ pub async fn rotate(exec_state: &mut ExecState, args: Args) -> Result<KclValue,
|
||||
// Don't adjust axis units since the axis must be normalized and only the direction
|
||||
// should be significant, not the magnitude.
|
||||
axis.map(|a| [a[0].n, a[1].n, a[2].n]),
|
||||
origin.map(|a| [a[0].n, a[1].n, a[2].n]),
|
||||
angle.map(|t| t.n),
|
||||
global,
|
||||
exec_state,
|
||||
@ -302,6 +330,7 @@ async fn inner_rotate(
|
||||
pitch: Option<f64>,
|
||||
yaw: Option<f64>,
|
||||
axis: Option<[f64; 3]>,
|
||||
origin: Option<[f64; 3]>,
|
||||
angle: Option<f64>,
|
||||
global: Option<bool>,
|
||||
exec_state: &mut ExecState,
|
||||
@ -313,6 +342,20 @@ async fn inner_rotate(
|
||||
exec_state.flush_batch_for_solids((&args).into(), solids).await?;
|
||||
}
|
||||
|
||||
let origin = if let Some(origin) = origin {
|
||||
Some(OriginType::Custom {
|
||||
origin: shared::Point3d {
|
||||
x: origin[0],
|
||||
y: origin[1],
|
||||
z: origin[2],
|
||||
},
|
||||
})
|
||||
} else if global.unwrap_or(false) {
|
||||
Some(OriginType::Global)
|
||||
} else {
|
||||
Some(OriginType::Local)
|
||||
};
|
||||
|
||||
let mut objects = objects.clone();
|
||||
for object_id in objects.ids(&args.ctx).await? {
|
||||
if let (Some(axis), Some(angle)) = (&axis, angle) {
|
||||
@ -322,16 +365,17 @@ async fn inner_rotate(
|
||||
ModelingCmd::from(mcmd::SetObjectTransform {
|
||||
object_id,
|
||||
transforms: vec![shared::ComponentTransform {
|
||||
rotate_angle_axis: Some(shared::TransformBy::<Point4d<f64>> {
|
||||
property: shared::Point4d {
|
||||
rotate_angle_axis: Some(transform_by(
|
||||
shared::Point4d {
|
||||
x: axis[0],
|
||||
y: axis[1],
|
||||
z: axis[2],
|
||||
w: angle,
|
||||
},
|
||||
set: false,
|
||||
is_local: !global.unwrap_or(false),
|
||||
}),
|
||||
false,
|
||||
!global.unwrap_or(false),
|
||||
origin,
|
||||
)),
|
||||
scale: None,
|
||||
rotate_rpy: None,
|
||||
translate: None,
|
||||
@ -347,15 +391,16 @@ async fn inner_rotate(
|
||||
ModelingCmd::from(mcmd::SetObjectTransform {
|
||||
object_id,
|
||||
transforms: vec![shared::ComponentTransform {
|
||||
rotate_rpy: Some(shared::TransformBy::<Point3d<f64>> {
|
||||
property: shared::Point3d {
|
||||
rotate_rpy: Some(transform_by(
|
||||
shared::Point3d {
|
||||
x: roll.unwrap_or(0.0),
|
||||
y: pitch.unwrap_or(0.0),
|
||||
z: yaw.unwrap_or(0.0),
|
||||
},
|
||||
set: false,
|
||||
is_local: !global.unwrap_or(false),
|
||||
}),
|
||||
false,
|
||||
!global.unwrap_or(false),
|
||||
origin,
|
||||
)),
|
||||
scale: None,
|
||||
rotate_angle_axis: None,
|
||||
translate: None,
|
||||
|
@ -5571926,7 +5571926,10 @@ description: Artifact commands import_async.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -19,7 +19,10 @@ description: Artifact commands import_mesh_clone.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -84,7 +87,10 @@ description: Artifact commands import_mesh_clone.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -149,7 +155,10 @@ description: Artifact commands import_mesh_clone.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -214,7 +223,10 @@ description: Artifact commands import_mesh_clone.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -5571084,7 +5571084,10 @@ description: Artifact commands import_transform.kcl
|
||||
"z": 3.14
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -5571107,7 +5571110,10 @@ description: Artifact commands import_transform.kcl
|
||||
"z": 3.14
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -5571134,7 +5571140,10 @@ description: Artifact commands import_transform.kcl
|
||||
"z": 3.14
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -182,7 +182,10 @@ description: Artifact commands import_whole_simple.kcl
|
||||
"z": 1.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -20,7 +20,10 @@ description: Artifact commands import_whole_transitive_import.kcl
|
||||
"z": 1.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -393,7 +393,10 @@ description: Artifact commands intersect_cubes.kcl
|
||||
"z": 1.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -956,7 +956,10 @@ description: Artifact commands ball-joint-rod-end.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1211,7 +1214,10 @@ description: Artifact commands ball-joint-rod-end.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 84 KiB |
@ -7382,7 +7382,10 @@ description: Artifact commands car-wheel-assembly.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7406,7 +7409,10 @@ description: Artifact commands car-wheel-assembly.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7430,7 +7436,10 @@ description: Artifact commands car-wheel-assembly.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7454,7 +7463,10 @@ description: Artifact commands car-wheel-assembly.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7478,7 +7490,10 @@ description: Artifact commands car-wheel-assembly.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7523,7 +7538,10 @@ description: Artifact commands car-wheel-assembly.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -7075,7 +7075,10 @@ description: Artifact commands cpu-cooler.kcl
|
||||
"z": 100.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7139,7 +7142,10 @@ description: Artifact commands cpu-cooler.kcl
|
||||
"z": 100.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7163,7 +7169,10 @@ description: Artifact commands cpu-cooler.kcl
|
||||
"z": 100.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7267,7 +7276,10 @@ description: Artifact commands cpu-cooler.kcl
|
||||
"z": 100.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7291,7 +7303,10 @@ description: Artifact commands cpu-cooler.kcl
|
||||
"z": 100.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7315,7 +7330,10 @@ description: Artifact commands cpu-cooler.kcl
|
||||
"z": 100.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7339,7 +7357,10 @@ description: Artifact commands cpu-cooler.kcl
|
||||
"z": 100.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7363,7 +7384,10 @@ description: Artifact commands cpu-cooler.kcl
|
||||
"z": 100.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7387,7 +7411,10 @@ description: Artifact commands cpu-cooler.kcl
|
||||
"z": 100.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7411,7 +7438,10 @@ description: Artifact commands cpu-cooler.kcl
|
||||
"z": 100.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7435,7 +7465,10 @@ description: Artifact commands cpu-cooler.kcl
|
||||
"z": 100.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7459,7 +7492,10 @@ description: Artifact commands cpu-cooler.kcl
|
||||
"z": 100.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -7483,7 +7519,10 @@ description: Artifact commands cpu-cooler.kcl
|
||||
"z": 100.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -482,7 +482,10 @@ description: Artifact commands curtain-wall-anchor-plate.kcl
|
||||
"z": -1.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -616,7 +619,10 @@ description: Artifact commands curtain-wall-anchor-plate.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1479,7 +1485,10 @@ description: Artifact commands curtain-wall-anchor-plate.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -1502,7 +1511,10 @@ description: Artifact commands curtain-wall-anchor-plate.kcl
|
||||
"z": 5.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -206,7 +206,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": -6604.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -231,7 +234,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -441,7 +447,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": -6606.54
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -466,7 +475,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -676,7 +688,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": -6609.079999999999
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -701,7 +716,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": 72.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -911,7 +929,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": -6611.62
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -936,7 +957,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": 144.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -1146,7 +1170,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": -6614.159999999999
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1171,7 +1198,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": 216.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -1381,7 +1411,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": -6616.7
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1406,7 +1439,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": 288.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -1616,7 +1652,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": -6619.24
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1641,7 +1680,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -1851,7 +1893,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": -6621.78
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1876,7 +1921,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": 36.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -2086,7 +2134,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": -6624.32
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -2111,7 +2162,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": 108.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -2321,7 +2375,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": -6626.859999999999
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -2346,7 +2403,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": 180.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -2556,7 +2616,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": -6606.794
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -2581,7 +2644,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": 252.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -2791,7 +2857,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": -6607.048
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -2816,7 +2885,10 @@ description: Artifact commands dodecahedron.kcl
|
||||
"z": 324.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
|
@ -2743,7 +2743,10 @@ description: Artifact commands helical-planetary-gearset.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -629,7 +629,10 @@ description: Artifact commands herringbone-gear.kcl
|
||||
"z": 8.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -707,7 +707,10 @@ description: Artifact commands herringbone-planetary-gearset.kcl
|
||||
"z": 8.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1383,7 +1386,10 @@ description: Artifact commands herringbone-planetary-gearset.kcl
|
||||
"z": 8.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -2059,7 +2065,10 @@ description: Artifact commands herringbone-planetary-gearset.kcl
|
||||
"z": 8.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -2125,7 +2134,10 @@ description: Artifact commands herringbone-planetary-gearset.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -689,7 +689,10 @@ description: Artifact commands pdu-faceplate.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1088,7 +1091,10 @@ description: Artifact commands pdu-faceplate.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1344,7 +1350,10 @@ description: Artifact commands pdu-faceplate.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1589,7 +1598,10 @@ description: Artifact commands pdu-faceplate.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1817,7 +1829,10 @@ description: Artifact commands pdu-faceplate.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1913,7 +1928,10 @@ description: Artifact commands pdu-faceplate.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -2065,7 +2083,10 @@ description: Artifact commands pdu-faceplate.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -2873,7 +2894,10 @@ description: Artifact commands pdu-faceplate.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -3012,7 +3036,10 @@ description: Artifact commands pdu-faceplate.kcl
|
||||
"z": -13.335
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -1847,7 +1847,10 @@ description: Artifact commands pipe-flange-assembly.kcl
|
||||
"w": 180.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"scale": null
|
||||
}
|
||||
@ -1869,7 +1872,10 @@ description: Artifact commands pipe-flange-assembly.kcl
|
||||
"z": 3.8353999999999995
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1893,7 +1899,10 @@ description: Artifact commands pipe-flange-assembly.kcl
|
||||
"z": -2.3114
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -2223,7 +2232,10 @@ description: Artifact commands pipe-flange-assembly.kcl
|
||||
"z": 17.525999999999996
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -2952,7 +2964,10 @@ description: Artifact commands pipe-flange-assembly.kcl
|
||||
"z": 18.3388
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -2977,7 +2992,10 @@ description: Artifact commands pipe-flange-assembly.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -3387,7 +3405,10 @@ description: Artifact commands pipe-flange-assembly.kcl
|
||||
"z": -36.064825
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -3739,7 +3760,10 @@ description: Artifact commands pipe-flange-assembly.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -3762,7 +3786,10 @@ description: Artifact commands pipe-flange-assembly.kcl
|
||||
"z": 11.175999999999998
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -4093,7 +4120,10 @@ description: Artifact commands pipe-flange-assembly.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -4116,7 +4146,10 @@ description: Artifact commands pipe-flange-assembly.kcl
|
||||
"z": -15.011399999999998
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -570,7 +570,10 @@ description: Artifact commands prosthetic-hip.kcl
|
||||
"z": 110.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -595,7 +598,10 @@ description: Artifact commands prosthetic-hip.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -794,7 +800,10 @@ description: Artifact commands prosthetic-hip.kcl
|
||||
"z": 130.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -819,7 +828,10 @@ description: Artifact commands prosthetic-hip.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -1018,7 +1030,10 @@ description: Artifact commands prosthetic-hip.kcl
|
||||
"z": 140.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1043,7 +1058,10 @@ description: Artifact commands prosthetic-hip.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -1242,7 +1260,10 @@ description: Artifact commands prosthetic-hip.kcl
|
||||
"z": 145.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1267,7 +1288,10 @@ description: Artifact commands prosthetic-hip.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -1709,7 +1733,10 @@ description: Artifact commands prosthetic-hip.kcl
|
||||
"z": 133.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1734,7 +1761,10 @@ description: Artifact commands prosthetic-hip.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -2003,7 +2033,10 @@ description: Artifact commands prosthetic-hip.kcl
|
||||
"z": 133.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -2028,7 +2061,10 @@ description: Artifact commands prosthetic-hip.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -2297,7 +2333,10 @@ description: Artifact commands prosthetic-hip.kcl
|
||||
"z": 133.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -2322,7 +2361,10 @@ description: Artifact commands prosthetic-hip.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
|
@ -1002,7 +1002,10 @@ description: Artifact commands sash-window.kcl
|
||||
"z": -227.5
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1026,7 +1029,10 @@ description: Artifact commands sash-window.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1277,7 +1283,10 @@ description: Artifact commands sash-window.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1301,7 +1310,10 @@ description: Artifact commands sash-window.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1557,7 +1569,10 @@ description: Artifact commands sash-window.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1581,7 +1596,10 @@ description: Artifact commands sash-window.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -1606,7 +1624,10 @@ description: Artifact commands sash-window.kcl
|
||||
"z": -0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -2177,7 +2198,10 @@ description: Artifact commands sash-window.kcl
|
||||
"z": 227.5
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -1805,7 +1805,10 @@ description: Artifact commands spool.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -661,7 +661,10 @@ description: Artifact commands spur-reduction-gearset.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -686,7 +689,10 @@ description: Artifact commands spur-reduction-gearset.kcl
|
||||
"z": 3.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
|
@ -502,7 +502,10 @@ description: Artifact commands t-slot-rail.kcl
|
||||
"z": 1.5
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -9827,7 +9827,10 @@ description: Artifact commands walkie-talkie.kcl
|
||||
"z": 50.8
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -9851,7 +9854,10 @@ description: Artifact commands walkie-talkie.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -9875,7 +9881,10 @@ description: Artifact commands walkie-talkie.kcl
|
||||
"z": 12.7
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -9899,7 +9908,10 @@ description: Artifact commands walkie-talkie.kcl
|
||||
"z": 50.8
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -10181,7 +10193,10 @@ description: Artifact commands walkie-talkie.kcl
|
||||
"z": 31.75
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -10463,7 +10478,10 @@ description: Artifact commands walkie-talkie.kcl
|
||||
"z": 18.541999999999998
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -10746,7 +10764,10 @@ description: Artifact commands walkie-talkie.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -10769,7 +10790,10 @@ description: Artifact commands walkie-talkie.kcl
|
||||
"z": 19.558
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -11052,7 +11076,10 @@ description: Artifact commands walkie-talkie.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
@ -11075,7 +11102,10 @@ description: Artifact commands walkie-talkie.kcl
|
||||
"z": 6.350000000000001
|
||||
},
|
||||
"set": false,
|
||||
"is_local": false
|
||||
"is_local": false,
|
||||
"origin": {
|
||||
"type": "global"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -225,7 +225,10 @@ description: Artifact commands module_return_using_var.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -15925,7 +15925,10 @@ description: Artifact commands multiple-foreign-imports-all-render.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -15966,7 +15969,10 @@ description: Artifact commands multiple-foreign-imports-all-render.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -571,7 +571,10 @@ description: Artifact commands rotate_after_fillet.kcl
|
||||
"z": 3.14
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
|
@ -573,7 +573,10 @@ description: Artifact commands scale_after_fillet.kcl
|
||||
"z": 3.14
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -1025,7 +1025,10 @@ description: Artifact commands sketch_on_face_union.kcl
|
||||
"w": -90.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"scale": null
|
||||
}
|
||||
|
@ -357,7 +357,10 @@ description: Artifact commands spheres.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -367,7 +367,10 @@ description: Artifact commands subtract_cylinder_from_cube.kcl
|
||||
"z": 3.14
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -393,7 +393,10 @@ description: Artifact commands subtract_doesnt_need_brackets.kcl
|
||||
"z": 1.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -233,7 +233,10 @@ description: Artifact commands subtract_regression03.kcl
|
||||
"z": 1.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
|
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 60 KiB |
@ -682,7 +682,10 @@ description: Artifact commands subtract_with_pattern.kcl
|
||||
"w": 90.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"scale": null
|
||||
}
|
||||
|
@ -384,7 +384,10 @@ description: Artifact commands subtract_with_pattern_cut_thru.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -556,7 +559,10 @@ description: Artifact commands subtract_with_pattern_cut_thru.kcl
|
||||
"w": 90.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"scale": null
|
||||
}
|
||||
|
@ -570,7 +570,10 @@ description: Artifact commands translate_after_fillet.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -393,7 +393,10 @@ description: Artifact commands union_cubes.kcl
|
||||
"z": 1.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
|
@ -146,7 +146,10 @@ description: Artifact commands user_reported_union_2_bug.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
@ -401,7 +404,10 @@ description: Artifact commands user_reported_union_2_bug.kcl
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
"is_local": true,
|
||||
"origin": {
|
||||
"type": "local"
|
||||
}
|
||||
},
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
|