Parallelize the artifact graph only time suck (#6482)
* parallelize the artifact only time suck Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> make wasm safe Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> * artifact graph things Signed-off-by: Jess Frazelle <github@jessfraz.com> * updates Signed-off-by: Jess Frazelle <github@jessfraz.com> * updates Signed-off-by: Jess Frazelle <github@jessfraz.com> --------- Signed-off-by: Jess Frazelle <github@jessfraz.com>
This commit is contained in:
10
.github/workflows/cargo-test.yml
vendored
10
.github/workflows/cargo-test.yml
vendored
@ -15,8 +15,12 @@ name: cargo test
|
||||
jobs:
|
||||
cargotest:
|
||||
name: cargo test
|
||||
runs-on: ubuntu-latest-8-cores
|
||||
runs-on:
|
||||
- runs-on=${{ github.run_id }}
|
||||
- runner=32cpu-linux-x64
|
||||
- extras=s3-cache
|
||||
steps:
|
||||
- uses: runs-on/action@v1
|
||||
- uses: actions/create-github-app-token@v1
|
||||
id: app-token
|
||||
with:
|
||||
@ -81,7 +85,7 @@ jobs:
|
||||
run: |
|
||||
set -euo pipefail
|
||||
cd rust
|
||||
cargo nextest run --workspace --retries=2 --no-fail-fast --profile ci simulation_tests::kcl_samples 2>&1 | tee /tmp/github-actions.log
|
||||
cargo nextest run --workspace --features artifact-graph --retries=2 --no-fail-fast --profile ci simulation_tests::kcl_samples 2>&1 | tee /tmp/github-actions.log
|
||||
env:
|
||||
KITTYCAD_API_TOKEN: ${{secrets.KITTYCAD_API_TOKEN}}
|
||||
RUST_BACKTRACE: full
|
||||
@ -124,7 +128,7 @@ jobs:
|
||||
shell: bash
|
||||
run: |-
|
||||
cd rust
|
||||
cargo llvm-cov nextest --workspace --lcov --output-path lcov.info --retries=2 --no-fail-fast -P ci 2>&1 | tee /tmp/github-actions.log
|
||||
cargo llvm-cov nextest --workspace --features artifact-graph --lcov --output-path lcov.info --retries=2 --no-fail-fast -P ci 2>&1 | tee /tmp/github-actions.log
|
||||
env:
|
||||
KITTYCAD_API_TOKEN: ${{secrets.KITTYCAD_API_TOKEN}}
|
||||
RUST_MIN_STACK: 10485760000
|
||||
|
@ -289,7 +289,7 @@ unit of measurement is millimeters. Alternatively you may specify the unit
|
||||
by using an attribute. Likewise, you can also specify a coordinate system. E.g.,
|
||||
|
||||
```kcl
|
||||
@(unitLength = ft, coords = opengl)
|
||||
@(lengthUnit = ft, coords = opengl)
|
||||
import "tests/inputs/cube.obj"
|
||||
```
|
||||
|
||||
|
@ -6,7 +6,7 @@ layout: manual
|
||||
|
||||
Start a new 2-dimensional sketch on a specific plane or face.
|
||||
|
||||
### Sketch on Face Behavior
|
||||
## Sketch on Face Behavior
|
||||
|
||||
There are some important behaviors to understand when sketching on a face:
|
||||
|
||||
|
@ -292719,7 +292719,7 @@
|
||||
{
|
||||
"name": "startSketchOn",
|
||||
"summary": "Start a new 2-dimensional sketch on a specific plane or face.",
|
||||
"description": "### Sketch on Face Behavior\n\nThere are some important behaviors to understand when sketching on a face:\n\nThe resulting sketch will _include_ the face and thus Solid that was sketched on. So say you were to export the resulting Sketch / Solid from a sketch on a face, you would get both the artifact of the sketch on the face and the parent face / Solid itself.\n\nThis is important to understand because if you were to then sketch on the resulting Solid, it would again include the face and parent Solid that was sketched on. This could go on indefinitely.\n\nThe point is if you want to export the result of a sketch on a face, you only need to export the final Solid that was created from the sketch on the face, since it will include all the parent faces and Solids.",
|
||||
"description": "## Sketch on Face Behavior\n\nThere are some important behaviors to understand when sketching on a face:\n\nThe resulting sketch will _include_ the face and thus Solid that was sketched on. So say you were to export the resulting Sketch / Solid from a sketch on a face, you would get both the artifact of the sketch on the face and the parent face / Solid itself.\n\nThis is important to understand because if you were to then sketch on the resulting Solid, it would again include the face and parent Solid that was sketched on. This could go on indefinitely.\n\nThe point is if you want to export the result of a sketch on a face, you only need to export the final Solid that was created from the sketch on the face, since it will include all the parent faces and Solids.",
|
||||
"tags": [],
|
||||
"keywordArguments": true,
|
||||
"args": [
|
||||
|
@ -20,6 +20,12 @@
|
||||
targets = ["wasm32-unknown-unknown"];
|
||||
extensions = ["rustfmt" "llvm-tools-preview" "rust-src"];
|
||||
};
|
||||
|
||||
# stand-alone nightly formatter so we get the fancy unstable flags
|
||||
nightlyRustfmt = super.rust-bin.selectLatestNightlyWith (toolchain:
|
||||
toolchain.default.override {
|
||||
extensions = ["rustfmt"]; # just the formatter
|
||||
});
|
||||
})
|
||||
];
|
||||
|
||||
@ -44,6 +50,7 @@
|
||||
packages =
|
||||
(with pkgs; [
|
||||
rustToolchain
|
||||
nightlyRustfmt
|
||||
cargo-criterion
|
||||
cargo-nextest
|
||||
cargo-sort
|
||||
@ -69,7 +76,7 @@
|
||||
PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH = "${pkgs.playwright-driver.browsers}/chromium-1091/chrome-linux/chrome";
|
||||
PLAYWRIGHT_BROWSERS_PATH = "${pkgs.playwright-driver.browsers}";
|
||||
NODE_ENV = "development";
|
||||
RUSTFMT = "${pkgs.rust-bin.stable.latest.rustfmt}/bin/rustfmt";
|
||||
RUSTFMT = "${pkgs.nightlyRustfmt}/bin/rustfmt";
|
||||
};
|
||||
});
|
||||
|
||||
|
@ -9,7 +9,7 @@ after-engine = { max-threads = 12 }
|
||||
slow-timeout = { period = "180s", terminate-after = 1 }
|
||||
|
||||
[profile.ci]
|
||||
slow-timeout = { period = "50s", terminate-after = 5 }
|
||||
slow-timeout = { period = "280s", terminate-after = 5 }
|
||||
|
||||
[[profile.default.overrides]]
|
||||
# If a test starts with kcl_test_, then it uses the engine. So, limit its parallelism.
|
||||
|
@ -1,21 +1,24 @@
|
||||
cnr := "cargo nextest run"
|
||||
cita := "cargo insta test --accept"
|
||||
kcl_lib_flags := "-p kcl-lib --feature artifact-graph --no-fail-fast"
|
||||
|
||||
# Run the same lint checks we run in CI.
|
||||
lint:
|
||||
cargo clippy --workspace --all-targets --tests --all-features --examples --benches -- -D warnings
|
||||
# Ensure we can build without extra feature flags.
|
||||
cargo clippy -p kcl-lib --tests --examples --benches -- -D warnings
|
||||
|
||||
# Run the stdlib docs generation
|
||||
redo-kcl-stdlib-docs-no-imgs:
|
||||
EXPECTORATE=overwrite {{cnr}} -p kcl-lib docs::gen_std_tests::test_generate_stdlib
|
||||
EXPECTORATE=overwrite {{cnr}} {{kcl_lib_flags}} docs::gen_std_tests::test_generate_stdlib
|
||||
|
||||
# Generate the stdlib image artifacts
|
||||
# Then run the stdlib docs generation
|
||||
redo-kcl-stdlib-docs:
|
||||
TWENTY_TWENTY=overwrite {{cnr}} -p kcl-lib --no-fail-fast -- kcl_test_example
|
||||
TWENTY_TWENTY=overwrite {{cnr}} --workspace --no-fail-fast docs::kcl_doc::test::kcl_test_examples
|
||||
EXPECTORATE=overwrite {{cnr}} -p kcl-lib --no-fail-fast -- docs::gen_std_tests::test_generate_stdlib
|
||||
EXPECTORATE=overwrite {{cnr}} -p kcl-lib --no-fail-fast -- generate_settings_docs
|
||||
TWENTY_TWENTY=overwrite {{cnr}} {{kcl_lib_flags}} -- kcl_test_example
|
||||
TWENTY_TWENTY=overwrite {{cnr}} {{kcl_lib_flags}} docs::kcl_doc::test::kcl_test_examples
|
||||
EXPECTORATE=overwrite {{cnr}} {{kcl_lib_flags}} -- docs::gen_std_tests::test_generate_stdlib
|
||||
EXPECTORATE=overwrite {{cnr}} {{kcl_lib_flags}} -- generate_settings_docs
|
||||
|
||||
# Copy a test KCL file from executor tests into a new simulation test.
|
||||
copy-exec-test-into-sim-test test_name:
|
||||
@ -33,23 +36,23 @@ new-sim-test test_name render_to_png="true":
|
||||
|
||||
# Run a KCL deterministic simulation test case and accept output.
|
||||
overwrite-sim-test-sample test_name:
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} -p kcl-lib --no-quiet -- simulation_tests::kcl_samples::parse_{{test_name}}
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} -p kcl-lib --no-quiet -- simulation_tests::kcl_samples::unparse_{{test_name}}
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} -p kcl-lib --no-quiet -- simulation_tests::kcl_samples::kcl_test_execute_{{test_name}}
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} -p kcl-lib --no-quiet -- simulation_tests::kcl_samples::test_after_engine_generate_manifest
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} {{kcl_lib_flags}} --no-quiet -- simulation_tests::kcl_samples::parse_{{test_name}}
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} {{kcl_lib_flags}} --no-quiet -- simulation_tests::kcl_samples::unparse_{{test_name}}
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} {{kcl_lib_flags}} --no-quiet -- simulation_tests::kcl_samples::kcl_test_execute_{{test_name}}
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} {{kcl_lib_flags}} --no-quiet -- simulation_tests::kcl_samples::test_after_engine_generate_manifest
|
||||
|
||||
overwrite-sim-test test_name:
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} -p kcl-lib --no-quiet -- simulation_tests::{{test_name}}::parse
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} -p kcl-lib --no-quiet -- simulation_tests::{{test_name}}::unparse
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} -p kcl-lib --no-quiet -- simulation_tests::{{test_name}}::kcl_test_execute
|
||||
[ {{test_name}} != "kcl_samples" ] || EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} -p kcl-lib --no-quiet -- simulation_tests::{{test_name}}::test_after_engine_generate_manifest
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} {{kcl_lib_flags}} --no-quiet -- simulation_tests::{{test_name}}::parse
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} {{kcl_lib_flags}} --no-quiet -- simulation_tests::{{test_name}}::unparse
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} {{kcl_lib_flags}} --no-quiet -- simulation_tests::{{test_name}}::kcl_test_execute
|
||||
[ {{test_name}} != "kcl_samples" ] || EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} {{kcl_lib_flags}} --no-quiet -- simulation_tests::{{test_name}}::test_after_engine_generate_manifest
|
||||
|
||||
# Regenerate all the simulation test output.
|
||||
redo-sim-tests:
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} -p kcl-lib --no-quiet -- simulation_tests
|
||||
EXPECTORATE=overwrite TWENTY_TWENTY=overwrite {{cita}} {{kcl_lib_flags}} --no-quiet -- simulation_tests
|
||||
|
||||
test:
|
||||
export RUST_BRACKTRACE="full" && {{cnr}} --workspace --no-fail-fast
|
||||
export RUST_BRACKTRACE="full" && {{cnr}} --workspace --features artifact-graph --no-fail-fast
|
||||
|
||||
bump-kcl-crate-versions bump='patch':
|
||||
# First build the kcl-bumper tool.
|
||||
|
@ -108,6 +108,7 @@ tower-lsp = { workspace = true, features = ["proposed", "default"] }
|
||||
|
||||
[features]
|
||||
default = ["cli", "engine"]
|
||||
artifact-graph = []
|
||||
benchmark-execution = []
|
||||
cli = ["dep:clap", "kittycad/clap"]
|
||||
dhat-heap = ["dep:dhat"]
|
||||
|
@ -251,6 +251,7 @@ extrude(profile001, length = 100)"#
|
||||
result.last().unwrap();
|
||||
}
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
async fn kcl_test_cache_add_line_preserves_artifact_commands() {
|
||||
let code = r#"sketch001 = startSketchOn('XY')
|
||||
|
9
rust/kcl-lib/src/engine/async_tasks/mod.rs
Normal file
9
rust/kcl-lib/src/engine/async_tasks/mod.rs
Normal file
@ -0,0 +1,9 @@
|
||||
#[cfg(not(target_arch = "wasm32"))]
|
||||
pub mod tasks;
|
||||
#[cfg(target_arch = "wasm32")]
|
||||
pub mod tasks_wasm;
|
||||
|
||||
#[cfg(not(target_arch = "wasm32"))]
|
||||
pub use tasks::AsyncTasks;
|
||||
#[cfg(target_arch = "wasm32")]
|
||||
pub use tasks_wasm::AsyncTasks;
|
51
rust/kcl-lib/src/engine/async_tasks/tasks.rs
Normal file
51
rust/kcl-lib/src/engine/async_tasks/tasks.rs
Normal file
@ -0,0 +1,51 @@
|
||||
//! This module contains the `AsyncTasks` struct, which is used to manage a set of asynchronous
|
||||
//! tasks.
|
||||
|
||||
use std::sync::Arc;
|
||||
|
||||
use tokio::sync::RwLock;
|
||||
|
||||
use crate::errors::KclError;
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
pub struct AsyncTasks {
|
||||
pub tasks: Arc<RwLock<tokio::task::JoinSet<anyhow::Result<(), KclError>>>>,
|
||||
}
|
||||
|
||||
impl AsyncTasks {
|
||||
pub fn new() -> Self {
|
||||
Self {
|
||||
tasks: Arc::new(RwLock::new(tokio::task::JoinSet::new())),
|
||||
}
|
||||
}
|
||||
|
||||
pub async fn spawn<F>(&mut self, task: F)
|
||||
where
|
||||
F: std::future::Future<Output = anyhow::Result<(), KclError>>,
|
||||
F: Send + 'static,
|
||||
{
|
||||
self.tasks.write().await.spawn(task);
|
||||
}
|
||||
|
||||
// Wait for all tasks to finish.
|
||||
// Return an error if any of them failed.
|
||||
pub async fn join_all(&mut self) -> anyhow::Result<(), KclError> {
|
||||
let tasks = std::mem::take(&mut *self.tasks.write().await);
|
||||
let results = tasks.join_all().await;
|
||||
for result in results {
|
||||
result?;
|
||||
}
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
pub async fn clear(&mut self) {
|
||||
*self.tasks.write().await = tokio::task::JoinSet::new();
|
||||
}
|
||||
}
|
||||
|
||||
impl Default for AsyncTasks {
|
||||
fn default() -> Self {
|
||||
Self::new()
|
||||
}
|
||||
}
|
89
rust/kcl-lib/src/engine/async_tasks/tasks_wasm.rs
Normal file
89
rust/kcl-lib/src/engine/async_tasks/tasks_wasm.rs
Normal file
@ -0,0 +1,89 @@
|
||||
//! This module contains the `AsyncTasks` struct, which is used to manage a set of asynchronous
|
||||
//! tasks.
|
||||
|
||||
use std::{ops::AddAssign, sync::Arc};
|
||||
|
||||
use tokio::sync::RwLock;
|
||||
|
||||
use crate::errors::KclError;
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
pub struct AsyncTasks {
|
||||
pub sender: Arc<RwLock<tokio::sync::mpsc::Sender<Result<(), KclError>>>>,
|
||||
pub receiver: Arc<RwLock<tokio::sync::mpsc::Receiver<Result<(), KclError>>>>,
|
||||
pub sent: Arc<RwLock<usize>>,
|
||||
}
|
||||
|
||||
impl AsyncTasks {
|
||||
pub fn new() -> Self {
|
||||
let (results_tx, results_rx) = tokio::sync::mpsc::channel(1);
|
||||
Self {
|
||||
sender: Arc::new(RwLock::new(results_tx)),
|
||||
receiver: Arc::new(RwLock::new(results_rx)),
|
||||
sent: Arc::new(RwLock::new(0)),
|
||||
}
|
||||
}
|
||||
|
||||
pub async fn spawn<F>(&mut self, task: F)
|
||||
where
|
||||
F: std::future::Future<Output = anyhow::Result<(), KclError>>,
|
||||
F: Send + 'static,
|
||||
{
|
||||
// Add one to the sent counter.
|
||||
self.sent.write().await.add_assign(1);
|
||||
|
||||
// Spawn the task and send the result to the channel.
|
||||
let sender_clone = self.sender.clone();
|
||||
wasm_bindgen_futures::spawn_local(async move {
|
||||
let result = task.await;
|
||||
let sender = sender_clone.read().await;
|
||||
if let Err(_) = sender.send(result).await {
|
||||
web_sys::console::error_1(&"Failed to send result".into());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// Wait for all tasks to finish.
|
||||
// Return an error if any of them failed.
|
||||
pub async fn join_all(&mut self) -> anyhow::Result<(), KclError> {
|
||||
if *self.sent.read().await == 0 {
|
||||
return Ok(());
|
||||
}
|
||||
|
||||
let mut results = Vec::new();
|
||||
let mut receiver = self.receiver.write().await;
|
||||
|
||||
// Wait for all tasks to finish.
|
||||
while let Some(result) = receiver.recv().await {
|
||||
results.push(result);
|
||||
|
||||
// Check if all tasks have finished.
|
||||
if results.len() == *self.sent.read().await {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// Check if any of the tasks failed.
|
||||
for result in results {
|
||||
result?;
|
||||
}
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
pub async fn clear(&mut self) {
|
||||
// Clear the sent counter.
|
||||
*self.sent.write().await = 0;
|
||||
|
||||
// Clear the channel.
|
||||
let (results_tx, results_rx) = tokio::sync::mpsc::channel(1);
|
||||
*self.sender.write().await = results_tx;
|
||||
*self.receiver.write().await = results_rx;
|
||||
}
|
||||
}
|
||||
|
||||
impl Default for AsyncTasks {
|
||||
fn default() -> Self {
|
||||
Self::new()
|
||||
}
|
||||
}
|
@ -18,11 +18,12 @@ use tokio::sync::{mpsc, oneshot, RwLock};
|
||||
use tokio_tungstenite::tungstenite::Message as WsMsg;
|
||||
use uuid::Uuid;
|
||||
|
||||
use super::EngineStats;
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
use crate::execution::ArtifactCommand;
|
||||
use crate::{
|
||||
engine::EngineManager,
|
||||
engine::{AsyncTasks, EngineManager, EngineStats},
|
||||
errors::{KclError, KclErrorDetails},
|
||||
execution::{ArtifactCommand, DefaultPlanes, IdGenerator},
|
||||
execution::{DefaultPlanes, IdGenerator},
|
||||
SourceRange,
|
||||
};
|
||||
|
||||
@ -37,13 +38,14 @@ type WebSocketTcpWrite = futures::stream::SplitSink<tokio_tungstenite::WebSocket
|
||||
pub struct EngineConnection {
|
||||
engine_req_tx: mpsc::Sender<ToEngineReq>,
|
||||
shutdown_tx: mpsc::Sender<()>,
|
||||
responses: Arc<RwLock<IndexMap<uuid::Uuid, WebSocketResponse>>>,
|
||||
responses: ResponseInformation,
|
||||
pending_errors: Arc<RwLock<Vec<String>>>,
|
||||
#[allow(dead_code)]
|
||||
tcp_read_handle: Arc<TcpReadHandle>,
|
||||
socket_health: Arc<RwLock<SocketHealth>>,
|
||||
batch: Arc<RwLock<Vec<(WebSocketRequest, SourceRange)>>>,
|
||||
batch_end: Arc<RwLock<IndexMap<uuid::Uuid, (WebSocketRequest, SourceRange)>>>,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_commands: Arc<RwLock<Vec<ArtifactCommand>>>,
|
||||
ids_of_async_commands: Arc<RwLock<IndexMap<Uuid, SourceRange>>>,
|
||||
|
||||
@ -53,6 +55,8 @@ pub struct EngineConnection {
|
||||
session_data: Arc<RwLock<Option<ModelingSessionData>>>,
|
||||
|
||||
stats: EngineStats,
|
||||
|
||||
async_tasks: AsyncTasks,
|
||||
}
|
||||
|
||||
pub struct TcpRead {
|
||||
@ -116,12 +120,14 @@ impl Drop for TcpReadHandle {
|
||||
}
|
||||
}
|
||||
|
||||
struct ResponsesInformation {
|
||||
/// Information about the responses from the engine.
|
||||
#[derive(Clone, Debug)]
|
||||
struct ResponseInformation {
|
||||
/// The responses from the engine.
|
||||
responses: Arc<RwLock<IndexMap<uuid::Uuid, WebSocketResponse>>>,
|
||||
}
|
||||
|
||||
impl ResponsesInformation {
|
||||
impl ResponseInformation {
|
||||
pub async fn add(&self, id: Uuid, response: WebSocketResponse) {
|
||||
self.responses.write().await.insert(id, response);
|
||||
}
|
||||
@ -238,14 +244,14 @@ impl EngineConnection {
|
||||
|
||||
let session_data: Arc<RwLock<Option<ModelingSessionData>>> = Arc::new(RwLock::new(None));
|
||||
let session_data2 = session_data.clone();
|
||||
let responses: Arc<RwLock<IndexMap<uuid::Uuid, WebSocketResponse>>> = Arc::new(RwLock::new(IndexMap::new()));
|
||||
let ids_of_async_commands: Arc<RwLock<IndexMap<Uuid, SourceRange>>> = Arc::new(RwLock::new(IndexMap::new()));
|
||||
let socket_health = Arc::new(RwLock::new(SocketHealth::Active));
|
||||
let pending_errors = Arc::new(RwLock::new(Vec::new()));
|
||||
let pending_errors_clone = pending_errors.clone();
|
||||
let responses_information = ResponsesInformation {
|
||||
responses: responses.clone(),
|
||||
let response_information = ResponseInformation {
|
||||
responses: Arc::new(RwLock::new(IndexMap::new())),
|
||||
};
|
||||
let response_information_cloned = response_information.clone();
|
||||
|
||||
let socket_health_tcp_read = socket_health.clone();
|
||||
let tcp_read_handle = tokio::spawn(async move {
|
||||
@ -270,7 +276,7 @@ impl EngineConnection {
|
||||
BatchResponse::Success { response } => {
|
||||
// If the id is in our ids of async commands, remove
|
||||
// it.
|
||||
responses_information
|
||||
response_information_cloned
|
||||
.add(
|
||||
id,
|
||||
WebSocketResponse::Success(SuccessWebSocketResponse {
|
||||
@ -284,7 +290,7 @@ impl EngineConnection {
|
||||
.await;
|
||||
}
|
||||
BatchResponse::Failure { errors } => {
|
||||
responses_information
|
||||
response_information_cloned
|
||||
.add(
|
||||
id,
|
||||
WebSocketResponse::Failure(FailureWebSocketResponse {
|
||||
@ -311,7 +317,7 @@ impl EngineConnection {
|
||||
errors,
|
||||
}) => {
|
||||
if let Some(id) = request_id {
|
||||
responses_information
|
||||
response_information_cloned
|
||||
.add(
|
||||
*id,
|
||||
WebSocketResponse::Failure(FailureWebSocketResponse {
|
||||
@ -336,7 +342,7 @@ impl EngineConnection {
|
||||
}
|
||||
|
||||
if let Some(id) = id {
|
||||
responses_information.add(id, ws_resp.clone()).await;
|
||||
response_information_cloned.add(id, ws_resp.clone()).await;
|
||||
}
|
||||
}
|
||||
Err(e) => {
|
||||
@ -357,16 +363,18 @@ impl EngineConnection {
|
||||
tcp_read_handle: Arc::new(TcpReadHandle {
|
||||
handle: Arc::new(tcp_read_handle),
|
||||
}),
|
||||
responses,
|
||||
responses: response_information,
|
||||
pending_errors,
|
||||
socket_health,
|
||||
batch: Arc::new(RwLock::new(Vec::new())),
|
||||
batch_end: Arc::new(RwLock::new(IndexMap::new())),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_commands: Arc::new(RwLock::new(Vec::new())),
|
||||
ids_of_async_commands,
|
||||
default_planes: Default::default(),
|
||||
session_data,
|
||||
stats: Default::default(),
|
||||
async_tasks: AsyncTasks::new(),
|
||||
})
|
||||
}
|
||||
}
|
||||
@ -382,9 +390,10 @@ impl EngineManager for EngineConnection {
|
||||
}
|
||||
|
||||
fn responses(&self) -> Arc<RwLock<IndexMap<Uuid, WebSocketResponse>>> {
|
||||
self.responses.clone()
|
||||
self.responses.responses.clone()
|
||||
}
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
fn artifact_commands(&self) -> Arc<RwLock<Vec<ArtifactCommand>>> {
|
||||
self.artifact_commands.clone()
|
||||
}
|
||||
@ -393,6 +402,10 @@ impl EngineManager for EngineConnection {
|
||||
self.ids_of_async_commands.clone()
|
||||
}
|
||||
|
||||
fn async_tasks(&self) -> AsyncTasks {
|
||||
self.async_tasks.clone()
|
||||
}
|
||||
|
||||
fn stats(&self) -> &EngineStats {
|
||||
&self.stats
|
||||
}
|
||||
@ -483,9 +496,19 @@ impl EngineManager for EngineConnection {
|
||||
}));
|
||||
}
|
||||
}
|
||||
// We pop off the responses to cleanup our mappings.
|
||||
if let Some(resp) = self.responses.write().await.shift_remove(&id) {
|
||||
return Ok(resp);
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
{
|
||||
// We cannot pop here or it will break the artifact graph.
|
||||
if let Some(resp) = self.responses.responses.read().await.get(&id) {
|
||||
return Ok(resp.clone());
|
||||
}
|
||||
}
|
||||
#[cfg(not(feature = "artifact-graph"))]
|
||||
{
|
||||
if let Some(resp) = self.responses.responses.write().await.shift_remove(&id) {
|
||||
return Ok(resp);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -16,11 +16,13 @@ use kittycad_modeling_cmds::{self as kcmc, websocket::ModelingCmdReq, ImportFile
|
||||
use tokio::sync::RwLock;
|
||||
use uuid::Uuid;
|
||||
|
||||
use super::EngineStats;
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
use crate::execution::ArtifactCommand;
|
||||
use crate::{
|
||||
engine::{AsyncTasks, EngineStats},
|
||||
errors::KclError,
|
||||
exec::DefaultPlanes,
|
||||
execution::{ArtifactCommand, IdGenerator},
|
||||
execution::IdGenerator,
|
||||
SourceRange,
|
||||
};
|
||||
|
||||
@ -28,12 +30,14 @@ use crate::{
|
||||
pub struct EngineConnection {
|
||||
batch: Arc<RwLock<Vec<(WebSocketRequest, SourceRange)>>>,
|
||||
batch_end: Arc<RwLock<IndexMap<uuid::Uuid, (WebSocketRequest, SourceRange)>>>,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_commands: Arc<RwLock<Vec<ArtifactCommand>>>,
|
||||
ids_of_async_commands: Arc<RwLock<IndexMap<Uuid, SourceRange>>>,
|
||||
responses: Arc<RwLock<IndexMap<Uuid, WebSocketResponse>>>,
|
||||
/// The default planes for the scene.
|
||||
default_planes: Arc<RwLock<Option<DefaultPlanes>>>,
|
||||
stats: EngineStats,
|
||||
async_tasks: AsyncTasks,
|
||||
}
|
||||
|
||||
impl EngineConnection {
|
||||
@ -41,11 +45,13 @@ impl EngineConnection {
|
||||
Ok(EngineConnection {
|
||||
batch: Arc::new(RwLock::new(Vec::new())),
|
||||
batch_end: Arc::new(RwLock::new(IndexMap::new())),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_commands: Arc::new(RwLock::new(Vec::new())),
|
||||
ids_of_async_commands: Arc::new(RwLock::new(IndexMap::new())),
|
||||
responses: Arc::new(RwLock::new(IndexMap::new())),
|
||||
default_planes: Default::default(),
|
||||
stats: Default::default(),
|
||||
async_tasks: AsyncTasks::new(),
|
||||
})
|
||||
}
|
||||
}
|
||||
@ -68,6 +74,7 @@ impl crate::engine::EngineManager for EngineConnection {
|
||||
&self.stats
|
||||
}
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
fn artifact_commands(&self) -> Arc<RwLock<Vec<ArtifactCommand>>> {
|
||||
self.artifact_commands.clone()
|
||||
}
|
||||
@ -76,6 +83,10 @@ impl crate::engine::EngineManager for EngineConnection {
|
||||
self.ids_of_async_commands.clone()
|
||||
}
|
||||
|
||||
fn async_tasks(&self) -> AsyncTasks {
|
||||
self.async_tasks.clone()
|
||||
}
|
||||
|
||||
fn get_default_planes(&self) -> Arc<RwLock<Option<DefaultPlanes>>> {
|
||||
self.default_planes.clone()
|
||||
}
|
||||
|
@ -11,7 +11,7 @@ use uuid::Uuid;
|
||||
use wasm_bindgen::prelude::*;
|
||||
|
||||
use crate::{
|
||||
engine::EngineStats,
|
||||
engine::{AsyncTasks, EngineStats},
|
||||
errors::{KclError, KclErrorDetails},
|
||||
execution::{ArtifactCommand, DefaultPlanes, IdGenerator},
|
||||
SourceRange,
|
||||
@ -55,6 +55,7 @@ pub struct EngineConnection {
|
||||
/// The default planes for the scene.
|
||||
default_planes: Arc<RwLock<Option<DefaultPlanes>>>,
|
||||
stats: EngineStats,
|
||||
async_tasks: AsyncTasks,
|
||||
}
|
||||
|
||||
#[wasm_bindgen]
|
||||
@ -128,6 +129,7 @@ impl EngineConnection {
|
||||
ids_of_async_commands: Arc::new(RwLock::new(IndexMap::new())),
|
||||
default_planes: Default::default(),
|
||||
stats: Default::default(),
|
||||
async_tasks: AsyncTasks::new(),
|
||||
})
|
||||
}
|
||||
|
||||
@ -270,6 +272,10 @@ impl crate::engine::EngineManager for EngineConnection {
|
||||
self.ids_of_async_commands.clone()
|
||||
}
|
||||
|
||||
fn async_tasks(&self) -> AsyncTasks {
|
||||
self.async_tasks.clone()
|
||||
}
|
||||
|
||||
fn get_default_planes(&self) -> Arc<RwLock<Option<DefaultPlanes>>> {
|
||||
self.default_planes.clone()
|
||||
}
|
||||
|
@ -1,5 +1,6 @@
|
||||
//! Functions for managing engine communications.
|
||||
|
||||
pub mod async_tasks;
|
||||
#[cfg(not(target_arch = "wasm32"))]
|
||||
#[cfg(feature = "engine")]
|
||||
pub mod conn;
|
||||
@ -16,10 +17,12 @@ use std::{
|
||||
},
|
||||
};
|
||||
|
||||
pub use async_tasks::AsyncTasks;
|
||||
use indexmap::IndexMap;
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
use kcmc::id::ModelingCmdId;
|
||||
use kcmc::{
|
||||
each_cmd as mcmd,
|
||||
id::ModelingCmdId,
|
||||
length_unit::LengthUnit,
|
||||
ok_response::OkModelingCmdResponse,
|
||||
shared::Color,
|
||||
@ -35,9 +38,11 @@ use serde::{Deserialize, Serialize};
|
||||
use tokio::sync::RwLock;
|
||||
use uuid::Uuid;
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
use crate::execution::ArtifactCommand;
|
||||
use crate::{
|
||||
errors::{KclError, KclErrorDetails},
|
||||
execution::{types::UnitLen, ArtifactCommand, DefaultPlanes, IdGenerator, Point3d},
|
||||
execution::{types::UnitLen, DefaultPlanes, IdGenerator, Point3d},
|
||||
SourceRange,
|
||||
};
|
||||
|
||||
@ -74,11 +79,15 @@ pub trait EngineManager: std::fmt::Debug + Send + Sync + 'static {
|
||||
fn responses(&self) -> Arc<RwLock<IndexMap<Uuid, WebSocketResponse>>>;
|
||||
|
||||
/// Get the artifact commands that have accumulated so far.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
fn artifact_commands(&self) -> Arc<RwLock<Vec<ArtifactCommand>>>;
|
||||
|
||||
/// Get the ids of the async commands we are waiting for.
|
||||
fn ids_of_async_commands(&self) -> Arc<RwLock<IndexMap<Uuid, SourceRange>>>;
|
||||
|
||||
/// Get the async tasks we are waiting for.
|
||||
fn async_tasks(&self) -> AsyncTasks;
|
||||
|
||||
/// Take the batch of commands that have accumulated so far and clear them.
|
||||
async fn take_batch(&self) -> Vec<(WebSocketRequest, SourceRange)> {
|
||||
std::mem::take(&mut *self.batch().write().await)
|
||||
@ -90,11 +99,13 @@ pub trait EngineManager: std::fmt::Debug + Send + Sync + 'static {
|
||||
}
|
||||
|
||||
/// Clear all artifact commands that have accumulated so far.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
async fn clear_artifact_commands(&self) {
|
||||
self.artifact_commands().write().await.clear();
|
||||
}
|
||||
|
||||
/// Take the artifact commands that have accumulated so far and clear them.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
async fn take_artifact_commands(&self) -> Vec<ArtifactCommand> {
|
||||
std::mem::take(&mut *self.artifact_commands().write().await)
|
||||
}
|
||||
@ -145,6 +156,7 @@ pub trait EngineManager: std::fmt::Debug + Send + Sync + 'static {
|
||||
self.batch().write().await.clear();
|
||||
self.batch_end().write().await.clear();
|
||||
self.ids_of_async_commands().write().await.clear();
|
||||
self.async_tasks().clear().await;
|
||||
}
|
||||
|
||||
/// Send a modeling command and do not wait for the response message.
|
||||
@ -186,6 +198,7 @@ pub trait EngineManager: std::fmt::Debug + Send + Sync + 'static {
|
||||
|
||||
// Ensure artifact commands are cleared so that we don't accumulate them
|
||||
// across runs.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
self.clear_artifact_commands().await;
|
||||
|
||||
// Do the after clear scene hook.
|
||||
@ -253,6 +266,18 @@ pub trait EngineManager: std::fmt::Debug + Send + Sync + 'static {
|
||||
self.ensure_async_command_completed(id, Some(source_range)).await?;
|
||||
}
|
||||
|
||||
// Make sure we check for all async tasks as well.
|
||||
// The reason why we ignore the error here is that, if a model fillets an edge
|
||||
// we previously called something on, it might no longer exist. In which case,
|
||||
// the artifact graph won't care either if its gone since you can't select it
|
||||
// anymore anyways.
|
||||
if let Err(err) = self.async_tasks().join_all().await {
|
||||
crate::log::logln!("Error waiting for async tasks (this is typically fine and just means that an edge became something else): {:?}", err);
|
||||
}
|
||||
|
||||
// Flush the batch to make sure nothing remains.
|
||||
self.flush_batch(true, SourceRange::default()).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
@ -273,6 +298,7 @@ pub trait EngineManager: std::fmt::Debug + Send + Sync + 'static {
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
async fn handle_artifact_command(
|
||||
&self,
|
||||
cmd: &ModelingCmd,
|
||||
@ -413,6 +439,7 @@ pub trait EngineManager: std::fmt::Debug + Send + Sync + 'static {
|
||||
self.ids_of_async_commands().write().await.insert(id, source_range);
|
||||
|
||||
// Add to artifact commands.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
self.handle_artifact_command(cmd, id.into(), &HashMap::from([(id, source_range)]))
|
||||
.await?;
|
||||
|
||||
@ -486,6 +513,7 @@ pub trait EngineManager: std::fmt::Debug + Send + Sync + 'static {
|
||||
}
|
||||
|
||||
// Do the artifact commands.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
for (req, _) in orig_requests.iter() {
|
||||
match &req {
|
||||
WebSocketRequest::ModelingCmdBatchReq(ModelingBatch { requests, .. }) => {
|
||||
|
@ -3,8 +3,10 @@ use serde::{Deserialize, Serialize};
|
||||
use thiserror::Error;
|
||||
use tower_lsp::lsp_types::{Diagnostic, DiagnosticSeverity};
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
use crate::execution::{ArtifactCommand, ArtifactGraph, Operation};
|
||||
use crate::{
|
||||
execution::{ArtifactCommand, ArtifactGraph, DefaultPlanes, Operation},
|
||||
execution::DefaultPlanes,
|
||||
lsp::IntoDiagnostic,
|
||||
modules::{ModulePath, ModuleSource},
|
||||
source_range::SourceRange,
|
||||
@ -126,8 +128,11 @@ impl From<KclErrorWithOutputs> for KclError {
|
||||
#[serde(rename_all = "camelCase")]
|
||||
pub struct KclErrorWithOutputs {
|
||||
pub error: KclError,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub operations: Vec<Operation>,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub artifact_commands: Vec<ArtifactCommand>,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub artifact_graph: ArtifactGraph,
|
||||
pub filenames: IndexMap<ModuleId, ModulePath>,
|
||||
pub source_files: IndexMap<ModuleId, ModuleSource>,
|
||||
@ -137,17 +142,20 @@ pub struct KclErrorWithOutputs {
|
||||
impl KclErrorWithOutputs {
|
||||
pub fn new(
|
||||
error: KclError,
|
||||
operations: Vec<Operation>,
|
||||
artifact_commands: Vec<ArtifactCommand>,
|
||||
artifact_graph: ArtifactGraph,
|
||||
#[cfg(feature = "artifact-graph")] operations: Vec<Operation>,
|
||||
#[cfg(feature = "artifact-graph")] artifact_commands: Vec<ArtifactCommand>,
|
||||
#[cfg(feature = "artifact-graph")] artifact_graph: ArtifactGraph,
|
||||
filenames: IndexMap<ModuleId, ModulePath>,
|
||||
source_files: IndexMap<ModuleId, ModuleSource>,
|
||||
default_planes: Option<DefaultPlanes>,
|
||||
) -> Self {
|
||||
Self {
|
||||
error,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
operations,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_commands,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_graph,
|
||||
filenames,
|
||||
source_files,
|
||||
@ -157,8 +165,11 @@ impl KclErrorWithOutputs {
|
||||
pub fn no_outputs(error: KclError) -> Self {
|
||||
Self {
|
||||
error,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
operations: Default::default(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_commands: Default::default(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_graph: Default::default(),
|
||||
filenames: Default::default(),
|
||||
source_files: Default::default(),
|
||||
|
@ -3,23 +3,21 @@ use std::collections::HashMap;
|
||||
use async_recursion::async_recursion;
|
||||
use indexmap::IndexMap;
|
||||
|
||||
use super::{cad_op::Group, kcl_value::TypeDef, types::PrimitiveType};
|
||||
use crate::{
|
||||
errors::{KclError, KclErrorDetails},
|
||||
execution::{
|
||||
annotations,
|
||||
cad_op::{OpArg, OpKclValue, Operation},
|
||||
kcl_value::FunctionSource,
|
||||
kcl_value::{FunctionSource, TypeDef},
|
||||
memory,
|
||||
state::ModuleState,
|
||||
types::{NumericType, RuntimeType},
|
||||
types::{NumericType, PrimitiveType, RuntimeType},
|
||||
BodyType, EnvironmentRef, ExecState, ExecutorContext, KclValue, Metadata, PlaneType, TagEngineInfo,
|
||||
TagIdentifier,
|
||||
},
|
||||
modules::{ModuleId, ModulePath, ModuleRepr},
|
||||
parsing::ast::types::{
|
||||
Annotation, ArrayExpression, ArrayRangeExpression, BinaryExpression, BinaryOperator, BinaryPart, BodyItem,
|
||||
BoxNode, CallExpression, CallExpressionKw, Expr, FunctionExpression, IfExpression, ImportPath, ImportSelector,
|
||||
CallExpression, CallExpressionKw, Expr, FunctionExpression, IfExpression, ImportPath, ImportSelector,
|
||||
ItemVisibility, LiteralIdentifier, LiteralValue, MemberExpression, MemberObject, Name, Node, NodeRef,
|
||||
ObjectExpression, PipeExpression, Program, TagDeclarator, Type, UnaryExpression, UnaryOperator,
|
||||
},
|
||||
@ -30,6 +28,11 @@ use crate::{
|
||||
},
|
||||
CompilationError,
|
||||
};
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
use crate::{
|
||||
execution::cad_op::{Group, OpArg, OpKclValue, Operation},
|
||||
parsing::ast::types::BoxNode,
|
||||
};
|
||||
|
||||
enum StatementKind<'a> {
|
||||
Declaration { name: &'a str },
|
||||
@ -516,10 +519,11 @@ impl ExecutorContext {
|
||||
async fn exec_module_for_result(
|
||||
&self,
|
||||
module_id: ModuleId,
|
||||
module_name: &BoxNode<Name>,
|
||||
#[cfg(feature = "artifact-graph")] module_name: &BoxNode<Name>,
|
||||
exec_state: &mut ExecState,
|
||||
source_range: SourceRange,
|
||||
) -> Result<Option<KclValue>, KclError> {
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.operations.push(Operation::GroupBegin {
|
||||
group: Group::ModuleInstance {
|
||||
name: module_name.to_string(),
|
||||
@ -566,6 +570,7 @@ impl ExecutorContext {
|
||||
|
||||
exec_state.global.module_infos[&module_id].restore_repr(repr);
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.operations.push(Operation::GroupEnd);
|
||||
|
||||
result
|
||||
@ -619,8 +624,12 @@ impl ExecutorContext {
|
||||
Expr::Name(name) => {
|
||||
let value = name.get_result(exec_state, self).await?.clone();
|
||||
if let KclValue::Module { value: module_id, meta } = value {
|
||||
self.exec_module_for_result(module_id, name, exec_state, metadata.source_range)
|
||||
.await?
|
||||
self.exec_module_for_result(
|
||||
module_id,
|
||||
#[cfg(feature = "artifact-graph")] name,
|
||||
exec_state,
|
||||
metadata.source_range
|
||||
).await?
|
||||
.unwrap_or_else(|| {
|
||||
exec_state.warn(CompilationError::err(
|
||||
metadata.source_range,
|
||||
@ -1340,6 +1349,7 @@ impl Node<CallExpressionKw> {
|
||||
));
|
||||
}
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
let op = if func.feature_tree_operation() {
|
||||
let op_labeled_args = args
|
||||
.kw_args
|
||||
@ -1389,6 +1399,7 @@ impl Node<CallExpressionKw> {
|
||||
let result = func.std_lib_fn()(exec_state, args).await;
|
||||
exec_state.mut_stack().pop_env();
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
if let Some(mut op) = op {
|
||||
op.set_std_lib_call_is_error(result.is_err());
|
||||
// Track call operation. We do this after the call
|
||||
@ -1398,6 +1409,7 @@ impl Node<CallExpressionKw> {
|
||||
// so we need to build the op before the call.
|
||||
exec_state.global.operations.push(op);
|
||||
}
|
||||
|
||||
result
|
||||
}?;
|
||||
|
||||
@ -1426,6 +1438,7 @@ impl Node<CallExpressionKw> {
|
||||
e.add_source_ranges(vec![callsite])
|
||||
})?;
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
if matches!(fn_src, FunctionSource::User { .. }) {
|
||||
// Track return operation.
|
||||
exec_state.global.operations.push(Operation::GroupEnd);
|
||||
@ -1478,6 +1491,7 @@ impl Node<CallExpression> {
|
||||
));
|
||||
}
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
let op = if func.feature_tree_operation() {
|
||||
let op_labeled_args = func
|
||||
.args(false)
|
||||
@ -1514,6 +1528,7 @@ impl Node<CallExpression> {
|
||||
let result = func.std_lib_fn()(exec_state, args).await;
|
||||
exec_state.mut_stack().pop_env();
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
if let Some(mut op) = op {
|
||||
op.set_std_lib_call_is_error(result.is_err());
|
||||
// Track call operation. We do this after the call
|
||||
@ -1537,6 +1552,7 @@ impl Node<CallExpression> {
|
||||
let func = fn_name.get_result(exec_state, ctx).await?.clone();
|
||||
|
||||
// Track call operation.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.operations.push(Operation::GroupBegin {
|
||||
group: Group::FunctionCall {
|
||||
name: Some(fn_name.to_string()),
|
||||
@ -1576,6 +1592,7 @@ impl Node<CallExpression> {
|
||||
})?;
|
||||
|
||||
// Track return operation.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.operations.push(Operation::GroupEnd);
|
||||
|
||||
Ok(result)
|
||||
@ -1671,7 +1688,7 @@ fn update_memory_for_tags_of_geometry(result: &mut KclValue, exec_state: &mut Ex
|
||||
let sketches_to_update: Vec<_> = exec_state
|
||||
.stack()
|
||||
.find_keys_in_current_env(|v| match v {
|
||||
KclValue::Sketch { value: sk } => sk.artifact_id == value.sketch.artifact_id,
|
||||
KclValue::Sketch { value: sk } => sk.original_id == value.sketch.original_id,
|
||||
_ => false,
|
||||
})
|
||||
.cloned()
|
||||
@ -2391,6 +2408,7 @@ impl FunctionSource {
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
let op = if props.include_in_feature_tree {
|
||||
let op_labeled_args = args
|
||||
.kw_args
|
||||
@ -2418,6 +2436,7 @@ impl FunctionSource {
|
||||
let result = func(exec_state, args).await;
|
||||
exec_state.mut_stack().pop_env();
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
if let Some(mut op) = op {
|
||||
op.set_std_lib_call_is_error(result.is_err());
|
||||
// Track call operation. We do this after the call
|
||||
@ -2436,25 +2455,28 @@ impl FunctionSource {
|
||||
}
|
||||
FunctionSource::User { ast, memory, .. } => {
|
||||
// Track call operation.
|
||||
let op_labeled_args = args
|
||||
.kw_args
|
||||
.labeled
|
||||
.iter()
|
||||
.map(|(k, arg)| (k.clone(), OpArg::new(OpKclValue::from(&arg.value), arg.source_range)))
|
||||
.collect();
|
||||
exec_state.global.operations.push(Operation::GroupBegin {
|
||||
group: Group::FunctionCall {
|
||||
name: fn_name.clone(),
|
||||
function_source_range: ast.as_source_range(),
|
||||
unlabeled_arg: args
|
||||
.kw_args
|
||||
.unlabeled
|
||||
.as_ref()
|
||||
.map(|arg| OpArg::new(OpKclValue::from(&arg.value), arg.source_range)),
|
||||
labeled_args: op_labeled_args,
|
||||
},
|
||||
source_range: callsite,
|
||||
});
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
{
|
||||
let op_labeled_args = args
|
||||
.kw_args
|
||||
.labeled
|
||||
.iter()
|
||||
.map(|(k, arg)| (k.clone(), OpArg::new(OpKclValue::from(&arg.value), arg.source_range)))
|
||||
.collect();
|
||||
exec_state.global.operations.push(Operation::GroupBegin {
|
||||
group: Group::FunctionCall {
|
||||
name: fn_name.clone(),
|
||||
function_source_range: ast.as_source_range(),
|
||||
unlabeled_arg: args
|
||||
.kw_args
|
||||
.unlabeled
|
||||
.as_ref()
|
||||
.map(|arg| OpArg::new(OpKclValue::from(&arg.value), arg.source_range)),
|
||||
labeled_args: op_labeled_args,
|
||||
},
|
||||
source_range: callsite,
|
||||
});
|
||||
}
|
||||
|
||||
call_user_defined_function_kw(fn_name.as_deref(), args.kw_args, *memory, ast, exec_state, ctx).await
|
||||
}
|
||||
|
@ -8,11 +8,11 @@ use parse_display::{Display, FromStr};
|
||||
use schemars::JsonSchema;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
use crate::execution::ArtifactId;
|
||||
use crate::{
|
||||
errors::KclError,
|
||||
execution::{
|
||||
types::NumericType, ArtifactId, ExecState, ExecutorContext, Metadata, TagEngineInfo, TagIdentifier, UnitLen,
|
||||
},
|
||||
execution::{types::NumericType, ExecState, ExecutorContext, Metadata, TagEngineInfo, TagIdentifier, UnitLen},
|
||||
parsing::ast::types::{Node, NodeRef, TagDeclarator, TagNode},
|
||||
std::{args::TyF64, sketch::PlaneData},
|
||||
};
|
||||
@ -255,6 +255,7 @@ pub struct Helix {
|
||||
/// The id of the helix.
|
||||
pub value: uuid::Uuid,
|
||||
/// The artifact ID.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub artifact_id: ArtifactId,
|
||||
/// Number of revolutions.
|
||||
pub revolutions: f64,
|
||||
@ -276,6 +277,7 @@ pub struct Plane {
|
||||
/// The id of the plane.
|
||||
pub id: uuid::Uuid,
|
||||
/// The artifact ID.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub artifact_id: ArtifactId,
|
||||
// The code for the plane either a string or custom.
|
||||
pub value: PlaneType,
|
||||
@ -455,6 +457,7 @@ impl Plane {
|
||||
match value {
|
||||
PlaneData::XY => Plane {
|
||||
id,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_id: id.into(),
|
||||
origin: Point3d::new(0.0, 0.0, 0.0, UnitLen::Mm),
|
||||
x_axis: Point3d::new(1.0, 0.0, 0.0, UnitLen::Mm),
|
||||
@ -464,6 +467,7 @@ impl Plane {
|
||||
},
|
||||
PlaneData::NegXY => Plane {
|
||||
id,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_id: id.into(),
|
||||
origin: Point3d::new(0.0, 0.0, 0.0, UnitLen::Mm),
|
||||
x_axis: Point3d::new(-1.0, 0.0, 0.0, UnitLen::Mm),
|
||||
@ -473,6 +477,7 @@ impl Plane {
|
||||
},
|
||||
PlaneData::XZ => Plane {
|
||||
id,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_id: id.into(),
|
||||
origin: Point3d::new(0.0, 0.0, 0.0, UnitLen::Mm),
|
||||
x_axis: Point3d::new(1.0, 0.0, 0.0, UnitLen::Mm),
|
||||
@ -482,6 +487,7 @@ impl Plane {
|
||||
},
|
||||
PlaneData::NegXZ => Plane {
|
||||
id,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_id: id.into(),
|
||||
origin: Point3d::new(0.0, 0.0, 0.0, UnitLen::Mm),
|
||||
x_axis: Point3d::new(-1.0, 0.0, 0.0, UnitLen::Mm),
|
||||
@ -491,6 +497,7 @@ impl Plane {
|
||||
},
|
||||
PlaneData::YZ => Plane {
|
||||
id,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_id: id.into(),
|
||||
origin: Point3d::new(0.0, 0.0, 0.0, UnitLen::Mm),
|
||||
x_axis: Point3d::new(0.0, 1.0, 0.0, UnitLen::Mm),
|
||||
@ -500,6 +507,7 @@ impl Plane {
|
||||
},
|
||||
PlaneData::NegYZ => Plane {
|
||||
id,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_id: id.into(),
|
||||
origin: Point3d::new(0.0, 0.0, 0.0, UnitLen::Mm),
|
||||
x_axis: Point3d::new(0.0, -1.0, 0.0, UnitLen::Mm),
|
||||
@ -511,6 +519,7 @@ impl Plane {
|
||||
let id = exec_state.next_uuid();
|
||||
Plane {
|
||||
id,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_id: id.into(),
|
||||
origin,
|
||||
x_axis,
|
||||
@ -536,6 +545,7 @@ pub struct Face {
|
||||
/// The id of the face.
|
||||
pub id: uuid::Uuid,
|
||||
/// The artifact ID.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub artifact_id: ArtifactId,
|
||||
/// The tag of the face.
|
||||
pub value: String,
|
||||
@ -589,6 +599,7 @@ pub struct Sketch {
|
||||
pub tags: IndexMap<String, TagIdentifier>,
|
||||
/// The original id of the sketch. This stays the same even if the sketch is
|
||||
/// is sketched on face etc.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub artifact_id: ArtifactId,
|
||||
#[ts(skip)]
|
||||
pub original_id: uuid::Uuid,
|
||||
@ -752,6 +763,7 @@ pub struct Solid {
|
||||
/// The id of the solid.
|
||||
pub id: uuid::Uuid,
|
||||
/// The artifact ID of the solid. Unlike `id`, this doesn't change.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub artifact_id: ArtifactId,
|
||||
/// The extrude surfaces.
|
||||
pub value: Vec<ExtrudeSurface>,
|
||||
|
@ -262,6 +262,7 @@ impl KclValue {
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub(crate) fn function_def_source_range(&self) -> Option<SourceRange> {
|
||||
let KclValue::Function {
|
||||
value: FunctionSource::User { ast, .. },
|
||||
|
@ -3,11 +3,13 @@
|
||||
use std::{path::PathBuf, sync::Arc};
|
||||
|
||||
use anyhow::Result;
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub use artifact::{
|
||||
Artifact, ArtifactCommand, ArtifactGraph, ArtifactId, CodeRef, StartSketchOnFace, StartSketchOnPlane,
|
||||
};
|
||||
use cache::OldAstState;
|
||||
pub use cache::{bust_cache, clear_mem_cache};
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub use cad_op::Operation;
|
||||
pub use geometry::*;
|
||||
pub use id_generator::IdGenerator;
|
||||
@ -26,11 +28,12 @@ use schemars::JsonSchema;
|
||||
use serde::{Deserialize, Serialize};
|
||||
pub use state::{ExecState, MetaSettings};
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
use crate::execution::artifact::build_artifact_graph;
|
||||
use crate::{
|
||||
engine::EngineManager,
|
||||
errors::{KclError, KclErrorDetails},
|
||||
execution::{
|
||||
artifact::build_artifact_graph,
|
||||
cache::{CacheInformation, CacheResult},
|
||||
types::{UnitAngle, UnitLen},
|
||||
},
|
||||
@ -43,8 +46,10 @@ use crate::{
|
||||
};
|
||||
|
||||
pub(crate) mod annotations;
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
mod artifact;
|
||||
pub(crate) mod cache;
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
mod cad_op;
|
||||
mod exec_ast;
|
||||
mod geometry;
|
||||
@ -64,10 +69,13 @@ pub struct ExecOutcome {
|
||||
pub variables: IndexMap<String, KclValue>,
|
||||
/// Operations that have been performed in execution order, for display in
|
||||
/// the Feature Tree.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub operations: Vec<Operation>,
|
||||
/// Output commands to allow building the artifact graph by the caller.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub artifact_commands: Vec<ArtifactCommand>,
|
||||
/// Output artifact graph.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub artifact_graph: ArtifactGraph,
|
||||
/// Non-fatal errors and warnings.
|
||||
pub errors: Vec<CompilationError>,
|
||||
@ -567,7 +575,7 @@ impl ExecutorContext {
|
||||
|
||||
let mut mem = exec_state.stack().clone();
|
||||
let module_infos = exec_state.global.module_infos.clone();
|
||||
let outcome = exec_state.to_mock_wasm_outcome(result.0).await;
|
||||
let outcome = exec_state.to_mock_exec_outcome(result.0).await;
|
||||
|
||||
mem.squash_env(result.0);
|
||||
cache::write_old_memory((mem, module_infos)).await;
|
||||
@ -635,13 +643,13 @@ impl ExecutorContext {
|
||||
})
|
||||
.await;
|
||||
|
||||
let outcome = old_state.to_wasm_outcome(result_env).await;
|
||||
let outcome = old_state.to_exec_outcome(result_env).await;
|
||||
return Ok(outcome);
|
||||
}
|
||||
(true, program)
|
||||
}
|
||||
CacheResult::NoAction(false) => {
|
||||
let outcome = old_state.to_wasm_outcome(result_env).await;
|
||||
let outcome = old_state.to_exec_outcome(result_env).await;
|
||||
return Ok(outcome);
|
||||
}
|
||||
};
|
||||
@ -691,7 +699,7 @@ impl ExecutorContext {
|
||||
})
|
||||
.await;
|
||||
|
||||
let outcome = exec_state.to_wasm_outcome(result.0).await;
|
||||
let outcome = exec_state.to_exec_outcome(result.0).await;
|
||||
Ok(outcome)
|
||||
}
|
||||
|
||||
@ -721,6 +729,12 @@ impl ExecutorContext {
|
||||
exec_state: &mut ExecState,
|
||||
) -> Result<(EnvironmentRef, Option<ModelingSessionData>), KclErrorWithOutputs> {
|
||||
exec_state.add_root_module_contents(program);
|
||||
|
||||
#[cfg(test)]
|
||||
{
|
||||
exec_state.single_threaded = true;
|
||||
}
|
||||
|
||||
self.eval_prelude(exec_state, SourceRange::synthetic())
|
||||
.await
|
||||
.map_err(KclErrorWithOutputs::no_outputs)?;
|
||||
@ -760,6 +774,7 @@ impl ExecutorContext {
|
||||
)
|
||||
.await
|
||||
.map_err(|err| {
|
||||
println!("Error: {err:?}");
|
||||
let module_id_to_module_path: IndexMap<ModuleId, ModulePath> = exec_state
|
||||
.global
|
||||
.path_to_source_id
|
||||
@ -769,8 +784,11 @@ impl ExecutorContext {
|
||||
|
||||
KclErrorWithOutputs::new(
|
||||
err,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.operations.clone(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.artifact_commands.clone(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.artifact_graph.clone(),
|
||||
module_id_to_module_path,
|
||||
exec_state.global.id_to_source.clone(),
|
||||
@ -789,8 +807,11 @@ impl ExecutorContext {
|
||||
|
||||
KclErrorWithOutputs::new(
|
||||
err,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.operations.clone(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.artifact_commands.clone(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.artifact_graph.clone(),
|
||||
module_id_to_module_path,
|
||||
exec_state.global.id_to_source.clone(),
|
||||
@ -934,8 +955,11 @@ impl ExecutorContext {
|
||||
|
||||
return Err(KclErrorWithOutputs::new(
|
||||
e,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.operations.clone(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.artifact_commands.clone(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.artifact_graph.clone(),
|
||||
module_id_to_module_path,
|
||||
exec_state.global.id_to_source.clone(),
|
||||
@ -986,8 +1010,11 @@ impl ExecutorContext {
|
||||
|
||||
KclErrorWithOutputs::new(
|
||||
e,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.operations.clone(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.artifact_commands.clone(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
exec_state.global.artifact_graph.clone(),
|
||||
module_id_to_module_path,
|
||||
exec_state.global.id_to_source.clone(),
|
||||
@ -1036,32 +1063,39 @@ impl ExecutorContext {
|
||||
// and should be dropped.
|
||||
self.engine.clear_queues().await;
|
||||
|
||||
// Move the artifact commands and responses to simplify cache management
|
||||
// and error creation.
|
||||
exec_state
|
||||
.global
|
||||
.artifact_commands
|
||||
.extend(self.engine.take_artifact_commands().await);
|
||||
exec_state
|
||||
.global
|
||||
.artifact_responses
|
||||
.extend(self.engine.take_responses().await);
|
||||
// Build the artifact graph.
|
||||
match build_artifact_graph(
|
||||
&exec_state.global.artifact_commands,
|
||||
&exec_state.global.artifact_responses,
|
||||
program,
|
||||
&exec_state.global.artifacts,
|
||||
) {
|
||||
Ok(artifact_graph) => {
|
||||
exec_state.global.artifact_graph = artifact_graph;
|
||||
exec_result.map(|(_, env_ref, _)| env_ref)
|
||||
}
|
||||
Err(err) => {
|
||||
// Prefer the exec error.
|
||||
exec_result.and(Err(err))
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
{
|
||||
// Move the artifact commands and responses to simplify cache management
|
||||
// and error creation.
|
||||
exec_state
|
||||
.global
|
||||
.artifact_commands
|
||||
.extend(self.engine.take_artifact_commands().await);
|
||||
exec_state
|
||||
.global
|
||||
.artifact_responses
|
||||
.extend(self.engine.take_responses().await);
|
||||
// Build the artifact graph.
|
||||
match build_artifact_graph(
|
||||
&exec_state.global.artifact_commands,
|
||||
&exec_state.global.artifact_responses,
|
||||
program,
|
||||
&exec_state.global.artifacts,
|
||||
) {
|
||||
Ok(artifact_graph) => {
|
||||
exec_state.global.artifact_graph = artifact_graph;
|
||||
exec_result.map(|(_, env_ref, _)| env_ref)
|
||||
}
|
||||
Err(err) => {
|
||||
// Prefer the exec error.
|
||||
exec_result.and(Err(err))
|
||||
}
|
||||
}
|
||||
}
|
||||
#[cfg(not(feature = "artifact-graph"))]
|
||||
{
|
||||
exec_result.map(|(_, env_ref, _)| env_ref)
|
||||
}
|
||||
}
|
||||
|
||||
/// 'Import' std::prelude as the outermost scope.
|
||||
|
@ -2,20 +2,23 @@ use std::sync::Arc;
|
||||
|
||||
use anyhow::Result;
|
||||
use indexmap::IndexMap;
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
use kittycad_modeling_cmds::websocket::WebSocketResponse;
|
||||
use schemars::JsonSchema;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use uuid::Uuid;
|
||||
|
||||
use super::types::NumericType;
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
use crate::execution::{Artifact, ArtifactCommand, ArtifactGraph, ArtifactId, Operation};
|
||||
use crate::{
|
||||
errors::{KclError, KclErrorDetails, Severity},
|
||||
execution::{
|
||||
annotations,
|
||||
id_generator::IdGenerator,
|
||||
memory::{ProgramMemory, Stack},
|
||||
types, Artifact, ArtifactCommand, ArtifactGraph, ArtifactId, EnvironmentRef, ExecOutcome, ExecutorSettings,
|
||||
KclValue, Operation, UnitAngle, UnitLen,
|
||||
types,
|
||||
types::NumericType,
|
||||
EnvironmentRef, ExecOutcome, ExecutorSettings, KclValue, UnitAngle, UnitLen,
|
||||
},
|
||||
modules::{ModuleId, ModuleInfo, ModuleLoader, ModulePath, ModuleRepr, ModuleSource},
|
||||
parsing::ast::types::Annotation,
|
||||
@ -29,6 +32,9 @@ pub struct ExecState {
|
||||
pub(super) global: GlobalState,
|
||||
pub(super) mod_local: ModuleState,
|
||||
pub(super) exec_context: Option<super::ExecutorContext>,
|
||||
/// If we should not parallelize execution.
|
||||
#[cfg(test)]
|
||||
pub single_threaded: bool,
|
||||
}
|
||||
|
||||
pub type ModuleInfoMap = IndexMap<ModuleId, ModuleInfo>;
|
||||
@ -42,20 +48,25 @@ pub(super) struct GlobalState {
|
||||
/// Map from module ID to module info.
|
||||
pub module_infos: ModuleInfoMap,
|
||||
/// Output map of UUIDs to artifacts.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub artifacts: IndexMap<ArtifactId, Artifact>,
|
||||
/// Output commands to allow building the artifact graph by the caller.
|
||||
/// These are accumulated in the [`ExecutorContext`] but moved here for
|
||||
/// convenience of the execution cache.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub artifact_commands: Vec<ArtifactCommand>,
|
||||
/// Responses from the engine for `artifact_commands`. We need to cache
|
||||
/// this so that we can build the artifact graph. These are accumulated in
|
||||
/// the [`ExecutorContext`] but moved here for convenience of the execution
|
||||
/// cache.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub artifact_responses: IndexMap<Uuid, WebSocketResponse>,
|
||||
/// Output artifact graph.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub artifact_graph: ArtifactGraph,
|
||||
/// Operations that have been performed in execution order, for display in
|
||||
/// the Feature Tree.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub operations: Vec<Operation>,
|
||||
/// Module loader.
|
||||
pub mod_loader: ModuleLoader,
|
||||
@ -85,6 +96,8 @@ impl ExecState {
|
||||
global: GlobalState::new(&exec_context.settings),
|
||||
mod_local: ModuleState::new(None, ProgramMemory::new(), Default::default()),
|
||||
exec_context: Some(exec_context.clone()),
|
||||
#[cfg(test)]
|
||||
single_threaded: false,
|
||||
}
|
||||
}
|
||||
|
||||
@ -95,6 +108,8 @@ impl ExecState {
|
||||
global,
|
||||
mod_local: ModuleState::new(None, ProgramMemory::new(), Default::default()),
|
||||
exec_context: Some(exec_context.clone()),
|
||||
#[cfg(test)]
|
||||
single_threaded: false,
|
||||
};
|
||||
}
|
||||
|
||||
@ -116,7 +131,7 @@ impl ExecState {
|
||||
/// Convert to execution outcome when running in WebAssembly. We want to
|
||||
/// reduce the amount of data that crosses the WASM boundary as much as
|
||||
/// possible.
|
||||
pub async fn to_wasm_outcome(self, main_ref: EnvironmentRef) -> ExecOutcome {
|
||||
pub async fn to_exec_outcome(self, main_ref: EnvironmentRef) -> ExecOutcome {
|
||||
// Fields are opt-in so that we don't accidentally leak private internal
|
||||
// state when we add more to ExecState.
|
||||
ExecOutcome {
|
||||
@ -125,8 +140,11 @@ impl ExecState {
|
||||
.find_all_in_env(main_ref)
|
||||
.map(|(k, v)| (k.clone(), v.clone()))
|
||||
.collect(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
operations: self.global.operations,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_commands: self.global.artifact_commands,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_graph: self.global.artifact_graph,
|
||||
errors: self.global.errors,
|
||||
filenames: self
|
||||
@ -143,7 +161,7 @@ impl ExecState {
|
||||
}
|
||||
}
|
||||
|
||||
pub async fn to_mock_wasm_outcome(self, main_ref: EnvironmentRef) -> ExecOutcome {
|
||||
pub async fn to_mock_exec_outcome(self, main_ref: EnvironmentRef) -> ExecOutcome {
|
||||
// Fields are opt-in so that we don't accidentally leak private internal
|
||||
// state when we add more to ExecState.
|
||||
ExecOutcome {
|
||||
@ -152,8 +170,11 @@ impl ExecState {
|
||||
.find_all_in_env(main_ref)
|
||||
.map(|(k, v)| (k.clone(), v.clone()))
|
||||
.collect(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
operations: Default::default(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_commands: Default::default(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_graph: Default::default(),
|
||||
errors: self.global.errors,
|
||||
filenames: Default::default(),
|
||||
@ -181,6 +202,7 @@ impl ExecState {
|
||||
&mut self.mod_local.id_generator
|
||||
}
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub(crate) fn add_artifact(&mut self, artifact: Artifact) {
|
||||
let id = artifact.id();
|
||||
self.global.artifacts.insert(id, artifact);
|
||||
@ -271,10 +293,15 @@ impl GlobalState {
|
||||
let mut global = GlobalState {
|
||||
path_to_source_id: Default::default(),
|
||||
module_infos: Default::default(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifacts: Default::default(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_commands: Default::default(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_responses: Default::default(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_graph: Default::default(),
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
operations: Default::default(),
|
||||
mod_loader: Default::default(),
|
||||
errors: Default::default(),
|
||||
|
@ -1051,6 +1051,7 @@ impl KclValue {
|
||||
let id = exec_state.mod_local.id_generator.next_uuid();
|
||||
let plane = Plane {
|
||||
id,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_id: id.into(),
|
||||
origin,
|
||||
x_axis,
|
||||
|
@ -81,7 +81,7 @@ pub mod walk;
|
||||
mod wasm;
|
||||
|
||||
pub use coredump::CoreDump;
|
||||
pub use engine::{EngineManager, EngineStats};
|
||||
pub use engine::{AsyncTasks, EngineManager, EngineStats};
|
||||
pub use errors::{
|
||||
CompilationError, ConnectionError, ExecError, KclError, KclErrorWithOutputs, Report, ReportWithOutputs,
|
||||
};
|
||||
@ -102,7 +102,9 @@ pub use unparser::{recast_dir, walk_dir};
|
||||
// Rather than make executor public and make lots of it pub(crate), just re-export into a new module.
|
||||
// Ideally we wouldn't export these things at all, they should only be used for testing.
|
||||
pub mod exec {
|
||||
pub use crate::execution::{ArtifactCommand, DefaultPlanes, IdGenerator, KclValue, PlaneType, Sketch};
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
pub use crate::execution::ArtifactCommand;
|
||||
pub use crate::execution::{DefaultPlanes, IdGenerator, KclValue, PlaneType, Sketch};
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "wasm32")]
|
||||
|
@ -1,16 +1,17 @@
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
use std::collections::HashMap;
|
||||
use std::{
|
||||
collections::HashMap,
|
||||
panic::{catch_unwind, AssertUnwindSafe},
|
||||
path::{Path, PathBuf},
|
||||
};
|
||||
|
||||
use insta::rounded_redaction;
|
||||
|
||||
use crate::{errors::KclError, ModuleId};
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
use crate::{
|
||||
errors::KclError,
|
||||
exec::ArtifactCommand,
|
||||
execution::{ArtifactGraph, Operation},
|
||||
ModuleId,
|
||||
};
|
||||
|
||||
mod kcl_samples;
|
||||
@ -156,9 +157,12 @@ async fn execute_test(test: &Test, render_to_png: bool, export_step: bool) {
|
||||
let ast = crate::Program::parse_no_errs(&input).unwrap();
|
||||
|
||||
// Run the program.
|
||||
let exec_res =
|
||||
crate::test_server::execute_and_snapshot_ast(ast, Some(test.input_dir.join(&test.entry_point)), export_step)
|
||||
.await;
|
||||
let exec_res = crate::test_server::execute_and_snapshot_ast_single_threaded(
|
||||
ast,
|
||||
Some(test.input_dir.join(&test.entry_point)),
|
||||
export_step,
|
||||
)
|
||||
.await;
|
||||
match exec_res {
|
||||
Ok((exec_state, env_ref, png, step)) => {
|
||||
let fail_path = test.output_dir.join("execution_error.snap");
|
||||
@ -178,7 +182,7 @@ async fn execute_test(test: &Test, render_to_png: bool, export_step: bool) {
|
||||
panic!("Step data was empty");
|
||||
}
|
||||
}
|
||||
let outcome = exec_state.to_wasm_outcome(env_ref).await;
|
||||
let outcome = exec_state.to_exec_outcome(env_ref).await;
|
||||
|
||||
let mem_result = catch_unwind(AssertUnwindSafe(|| {
|
||||
assert_snapshot(test, "Variables in memory after executing", || {
|
||||
@ -196,6 +200,7 @@ async fn execute_test(test: &Test, render_to_png: bool, export_step: bool) {
|
||||
})
|
||||
}));
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_common_snapshots(
|
||||
test,
|
||||
outcome.operations,
|
||||
@ -230,6 +235,7 @@ async fn execute_test(test: &Test, render_to_png: bool, export_step: bool) {
|
||||
})
|
||||
}));
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_common_snapshots(test, error.operations, error.artifact_commands, error.artifact_graph);
|
||||
err_result.unwrap();
|
||||
}
|
||||
@ -246,6 +252,7 @@ async fn execute_test(test: &Test, render_to_png: bool, export_step: bool) {
|
||||
|
||||
/// Assert snapshots that should happen both when KCL execution succeeds and
|
||||
/// when it results in an error.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
fn assert_common_snapshots(
|
||||
test: &Test,
|
||||
operations: Vec<Operation>,
|
||||
@ -1560,6 +1567,7 @@ mod mike_stress_test {
|
||||
|
||||
/// Test that KCL is executed correctly.
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
#[ignore = "when kurt made the artifact graph lots of commands, this became super slow and sometimes the engine will just die, turn this back on when we can parallelize the simulation tests with snapshots deterministically"]
|
||||
async fn kcl_test_execute() {
|
||||
super::execute(TEST_NAME, true).await
|
||||
}
|
||||
|
@ -9,14 +9,13 @@ use rgba_simple::Hex;
|
||||
use schemars::JsonSchema;
|
||||
use serde::Serialize;
|
||||
|
||||
use super::args::TyF64;
|
||||
use crate::{
|
||||
errors::{KclError, KclErrorDetails},
|
||||
execution::{types::RuntimeType, ExecState, KclValue, SolidOrImportedGeometry},
|
||||
std::Args,
|
||||
};
|
||||
|
||||
use super::args::TyF64;
|
||||
|
||||
lazy_static::lazy_static! {
|
||||
static ref HEX_REGEX: Regex = Regex::new(r"^#[0-9a-fA-F]{6}$").unwrap();
|
||||
}
|
||||
|
@ -3,14 +3,13 @@
|
||||
use anyhow::Result;
|
||||
use kcl_derive_docs::stdlib;
|
||||
|
||||
use super::args::TyF64;
|
||||
use crate::{
|
||||
errors::{KclError, KclErrorDetails},
|
||||
execution::{ExecState, KclValue},
|
||||
std::Args,
|
||||
};
|
||||
|
||||
use super::args::TyF64;
|
||||
|
||||
async fn _assert(value: bool, message: &str, args: &Args) -> Result<(), KclError> {
|
||||
if !value {
|
||||
return Err(KclError::Type(KclErrorDetails {
|
||||
|
@ -1,8 +1,7 @@
|
||||
//! Types for referencing an axis or edge.
|
||||
|
||||
use crate::std::fillet::EdgeReference;
|
||||
|
||||
use super::args::TyF64;
|
||||
use crate::std::fillet::EdgeReference;
|
||||
|
||||
/// A 2D axis or tagged edge.
|
||||
#[derive(Debug, Clone, PartialEq)]
|
||||
|
@ -5,6 +5,7 @@ use kcl_derive_docs::stdlib;
|
||||
use kcmc::{each_cmd as mcmd, length_unit::LengthUnit, shared::CutType, ModelingCmd};
|
||||
use kittycad_modeling_cmds as kcmc;
|
||||
|
||||
use super::args::TyF64;
|
||||
use crate::{
|
||||
errors::{KclError, KclErrorDetails},
|
||||
execution::{
|
||||
@ -15,8 +16,6 @@ use crate::{
|
||||
std::{fillet::EdgeReference, Args},
|
||||
};
|
||||
|
||||
use super::args::TyF64;
|
||||
|
||||
pub(crate) const DEFAULT_TOLERANCE: f64 = 0.0000001;
|
||||
|
||||
/// Create chamfers on tagged paths.
|
||||
|
@ -293,14 +293,20 @@ async fn inner_clone(
|
||||
let mut new_sketch = sketch.clone();
|
||||
new_sketch.id = new_id;
|
||||
new_sketch.original_id = new_id;
|
||||
new_sketch.artifact_id = new_id.into();
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
{
|
||||
new_sketch.artifact_id = new_id.into();
|
||||
}
|
||||
GeometryWithImportedGeometry::Sketch(new_sketch)
|
||||
}
|
||||
GeometryWithImportedGeometry::Solid(solid) => {
|
||||
let mut new_solid = solid.clone();
|
||||
new_solid.id = new_id;
|
||||
new_solid.sketch.original_id = new_id;
|
||||
new_solid.artifact_id = new_id.into();
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
{
|
||||
new_solid.artifact_id = new_id.into();
|
||||
}
|
||||
GeometryWithImportedGeometry::Solid(new_solid)
|
||||
}
|
||||
};
|
||||
@ -343,7 +349,10 @@ async fn fix_tags_and_references(
|
||||
// Make the sketch id the new geometry id.
|
||||
solid.sketch.id = new_geometry_id;
|
||||
solid.sketch.original_id = new_geometry_id;
|
||||
solid.sketch.artifact_id = new_geometry_id.into();
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
{
|
||||
solid.sketch.artifact_id = new_geometry_id.into();
|
||||
}
|
||||
|
||||
fix_sketch_tags_and_references(&mut solid.sketch, &entity_id_map, exec_state).await?;
|
||||
|
||||
@ -368,6 +377,7 @@ async fn fix_tags_and_references(
|
||||
// information.
|
||||
let new_solid = do_post_extrude(
|
||||
&solid.sketch,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
new_geometry_id.into(),
|
||||
crate::std::args::TyF64::new(
|
||||
solid.height,
|
||||
@ -547,8 +557,10 @@ clonedCube = clone(cube)
|
||||
|
||||
assert_ne!(cube.id, cloned_cube.id);
|
||||
assert_ne!(cube.original_id, cloned_cube.original_id);
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_ne!(cube.artifact_id, cloned_cube.artifact_id);
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_eq!(cloned_cube.artifact_id, cloned_cube.id.into());
|
||||
assert_eq!(cloned_cube.original_id, cloned_cube.id);
|
||||
|
||||
@ -597,9 +609,12 @@ clonedCube = clone(cube)
|
||||
assert_ne!(cube.id, cloned_cube.id);
|
||||
assert_ne!(cube.sketch.id, cloned_cube.sketch.id);
|
||||
assert_ne!(cube.sketch.original_id, cloned_cube.sketch.original_id);
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_ne!(cube.artifact_id, cloned_cube.artifact_id);
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_ne!(cube.sketch.artifact_id, cloned_cube.sketch.artifact_id);
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_eq!(cloned_cube.artifact_id, cloned_cube.id.into());
|
||||
|
||||
for (path, cloned_path) in cube.sketch.paths.iter().zip(cloned_cube.sketch.paths.iter()) {
|
||||
@ -711,9 +726,12 @@ clonedCube = clone(cube)
|
||||
assert_ne!(cube.id, cloned_cube.id);
|
||||
assert_ne!(cube.sketch.id, cloned_cube.sketch.id);
|
||||
assert_ne!(cube.sketch.original_id, cloned_cube.sketch.original_id);
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_ne!(cube.artifact_id, cloned_cube.artifact_id);
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_ne!(cube.sketch.artifact_id, cloned_cube.sketch.artifact_id);
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_eq!(cloned_cube.artifact_id, cloned_cube.id.into());
|
||||
|
||||
for (path, cloned_path) in cube.sketch.paths.iter().zip(cloned_cube.sketch.paths.iter()) {
|
||||
@ -783,9 +801,12 @@ clonedCube = clone(cube)
|
||||
assert_ne!(cube.id, cloned_cube.id);
|
||||
assert_ne!(cube.sketch.id, cloned_cube.sketch.id);
|
||||
assert_ne!(cube.sketch.original_id, cloned_cube.sketch.original_id);
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_ne!(cube.artifact_id, cloned_cube.artifact_id);
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_ne!(cube.sketch.artifact_id, cloned_cube.sketch.artifact_id);
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_eq!(cloned_cube.artifact_id, cloned_cube.id.into());
|
||||
|
||||
for (path, cloned_path) in cube.sketch.paths.iter().zip(cloned_cube.sketch.paths.iter()) {
|
||||
@ -883,9 +904,12 @@ clonedCube = clone(cube)
|
||||
assert_ne!(cube.id, cloned_cube.id);
|
||||
assert_ne!(cube.sketch.id, cloned_cube.sketch.id);
|
||||
assert_ne!(cube.sketch.original_id, cloned_cube.sketch.original_id);
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_ne!(cube.artifact_id, cloned_cube.artifact_id);
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_ne!(cube.sketch.artifact_id, cloned_cube.sketch.artifact_id);
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
assert_eq!(cloned_cube.artifact_id, cloned_cube.id.into());
|
||||
|
||||
for (path, cloned_path) in cube.sketch.paths.iter().zip(cloned_cube.sketch.paths.iter()) {
|
||||
|
@ -10,14 +10,13 @@ use kittycad_modeling_cmds::{
|
||||
websocket::OkWebSocketResponseData,
|
||||
};
|
||||
|
||||
use super::{args::TyF64, DEFAULT_TOLERANCE};
|
||||
use crate::{
|
||||
errors::{KclError, KclErrorDetails},
|
||||
execution::{types::RuntimeType, ExecState, KclValue, Solid},
|
||||
std::Args,
|
||||
};
|
||||
|
||||
use super::{args::TyF64, DEFAULT_TOLERANCE};
|
||||
|
||||
/// Union two or more solids into a single solid.
|
||||
pub async fn union(exec_state: &mut ExecState, args: Args) -> Result<KclValue, KclError> {
|
||||
let solids: Vec<Solid> =
|
||||
|
@ -16,18 +16,16 @@ use kcmc::{
|
||||
use kittycad_modeling_cmds::{self as kcmc};
|
||||
use uuid::Uuid;
|
||||
|
||||
use super::args::TyF64;
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
use crate::execution::ArtifactId;
|
||||
use crate::{
|
||||
errors::{KclError, KclErrorDetails},
|
||||
execution::{
|
||||
types::RuntimeType, ArtifactId, ExecState, ExtrudeSurface, GeoMeta, KclValue, Path, Sketch, SketchSurface,
|
||||
Solid,
|
||||
},
|
||||
execution::{types::RuntimeType, ExecState, ExtrudeSurface, GeoMeta, KclValue, Path, Sketch, SketchSurface, Solid},
|
||||
parsing::ast::types::TagNode,
|
||||
std::Args,
|
||||
};
|
||||
|
||||
use super::args::TyF64;
|
||||
|
||||
/// Extrudes by a given amount.
|
||||
pub async fn extrude(exec_state: &mut ExecState, args: Args) -> Result<KclValue, KclError> {
|
||||
let sketches = args.get_unlabeled_kw_arg_typed("sketches", &RuntimeType::sketches(), exec_state)?;
|
||||
@ -212,6 +210,7 @@ async fn inner_extrude(
|
||||
solids.push(
|
||||
do_post_extrude(
|
||||
sketch,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
id.into(),
|
||||
length.clone(),
|
||||
false,
|
||||
@ -237,7 +236,7 @@ pub(crate) struct NamedCapTags<'a> {
|
||||
|
||||
pub(crate) async fn do_post_extrude<'a>(
|
||||
sketch: &Sketch,
|
||||
solid_id: ArtifactId,
|
||||
#[cfg(feature = "artifact-graph")] solid_id: ArtifactId,
|
||||
length: TyF64,
|
||||
sectional: bool,
|
||||
named_cap_tags: &'a NamedCapTags<'a>,
|
||||
@ -297,6 +296,7 @@ pub(crate) async fn do_post_extrude<'a>(
|
||||
// are the ones that work with GetOppositeEdge and GetNextAdjacentEdge, aka the n sides in the sweep.
|
||||
// So here we're figuring out that n number as yielded_sides_count here,
|
||||
// making sure that circle() calls count but close() don't (no length)
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
let count_of_first_set_of_faces_if_sectional = if sectional {
|
||||
sketch
|
||||
.paths
|
||||
@ -311,6 +311,8 @@ pub(crate) async fn do_post_extrude<'a>(
|
||||
usize::MAX
|
||||
};
|
||||
|
||||
// Only do this if we need the artifact graph.
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
for (curve_id, face_id) in face_infos
|
||||
.iter()
|
||||
.filter(|face_info| face_info.cap == ExtrusionFaceCapType::None)
|
||||
@ -327,28 +329,21 @@ pub(crate) async fn do_post_extrude<'a>(
|
||||
// So, there's no need to await them.
|
||||
// Instead, the Typescript codebases (which handles WebSocket sends when compiled via Wasm)
|
||||
// uses this to build the artifact graph, which the UI needs.
|
||||
let opposite_edge_id = args
|
||||
.send_modeling_cmd(
|
||||
exec_state.next_uuid(),
|
||||
ModelingCmd::from(mcmd::Solid3dGetOppositeEdge {
|
||||
edge_id: curve_id,
|
||||
object_id: sketch.id,
|
||||
face_id,
|
||||
}),
|
||||
)
|
||||
.await?;
|
||||
let next_adjacent_edge_id = args
|
||||
.send_modeling_cmd(
|
||||
exec_state.next_uuid(),
|
||||
ModelingCmd::from(mcmd::Solid3dGetNextAdjacentEdge {
|
||||
edge_id: curve_id,
|
||||
object_id: sketch.id,
|
||||
face_id,
|
||||
}),
|
||||
)
|
||||
.await?;
|
||||
//
|
||||
// Spawn this in the background, because we don't care about the result.
|
||||
// Only the artifact graph needs at the end.
|
||||
let args_cloned = args.clone();
|
||||
let opposite_edge_uuid = exec_state.next_uuid();
|
||||
let next_adjacent_edge_uuid = exec_state.next_uuid();
|
||||
let get_all_edge_faces_opposite_uuid = exec_state.next_uuid();
|
||||
let get_all_edge_faces_next_uuid = exec_state.next_uuid();
|
||||
#[cfg(test)]
|
||||
let single_threaded = exec_state.single_threaded;
|
||||
#[cfg(not(test))]
|
||||
let single_threaded = false;
|
||||
|
||||
// Get faces for original edge
|
||||
// Since this one is batched we can just run it.
|
||||
args.batch_modeling_cmd(
|
||||
exec_state.next_uuid(),
|
||||
ModelingCmd::from(mcmd::Solid3dGetAllEdgeFaces {
|
||||
@ -358,36 +353,56 @@ pub(crate) async fn do_post_extrude<'a>(
|
||||
)
|
||||
.await?;
|
||||
|
||||
// Get faces for opposite edge
|
||||
if let OkWebSocketResponseData::Modeling {
|
||||
modeling_response: OkModelingCmdResponse::Solid3dGetOppositeEdge(opposite_edge),
|
||||
} = opposite_edge_id
|
||||
{
|
||||
args.batch_modeling_cmd(
|
||||
exec_state.next_uuid(),
|
||||
ModelingCmd::from(mcmd::Solid3dGetAllEdgeFaces {
|
||||
edge_id: opposite_edge.edge,
|
||||
object_id: sketch.id,
|
||||
}),
|
||||
if !single_threaded {
|
||||
args.ctx
|
||||
.engine
|
||||
.async_tasks()
|
||||
.spawn(get_bg_edge_info_opposite(
|
||||
args_cloned.clone(),
|
||||
curve_id,
|
||||
sketch.id,
|
||||
face_id,
|
||||
opposite_edge_uuid,
|
||||
get_all_edge_faces_opposite_uuid,
|
||||
single_threaded,
|
||||
))
|
||||
.await;
|
||||
|
||||
args.ctx
|
||||
.engine
|
||||
.async_tasks()
|
||||
.spawn(get_bg_edge_info_next(
|
||||
args_cloned,
|
||||
curve_id,
|
||||
sketch.id,
|
||||
face_id,
|
||||
next_adjacent_edge_uuid,
|
||||
get_all_edge_faces_next_uuid,
|
||||
single_threaded,
|
||||
))
|
||||
.await;
|
||||
} else {
|
||||
get_bg_edge_info_opposite(
|
||||
args_cloned.clone(),
|
||||
curve_id,
|
||||
sketch.id,
|
||||
face_id,
|
||||
opposite_edge_uuid,
|
||||
get_all_edge_faces_opposite_uuid,
|
||||
single_threaded,
|
||||
)
|
||||
.await?;
|
||||
}
|
||||
|
||||
// Get faces for next adjacent edge
|
||||
if let OkWebSocketResponseData::Modeling {
|
||||
modeling_response: OkModelingCmdResponse::Solid3dGetNextAdjacentEdge(next_adjacent_edge),
|
||||
} = next_adjacent_edge_id
|
||||
{
|
||||
if let Some(edge_id) = next_adjacent_edge.edge {
|
||||
args.batch_modeling_cmd(
|
||||
exec_state.next_uuid(),
|
||||
ModelingCmd::from(mcmd::Solid3dGetAllEdgeFaces {
|
||||
edge_id,
|
||||
object_id: sketch.id,
|
||||
}),
|
||||
)
|
||||
.await?;
|
||||
}
|
||||
get_bg_edge_info_next(
|
||||
args_cloned,
|
||||
curve_id,
|
||||
sketch.id,
|
||||
face_id,
|
||||
next_adjacent_edge_uuid,
|
||||
get_all_edge_faces_next_uuid,
|
||||
single_threaded,
|
||||
)
|
||||
.await?;
|
||||
}
|
||||
}
|
||||
|
||||
@ -509,6 +524,7 @@ pub(crate) async fn do_post_extrude<'a>(
|
||||
// that we passed in to the function, but it's actually the id of the
|
||||
// sketch.
|
||||
id: sketch.id,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_id: solid_id,
|
||||
value: new_value,
|
||||
meta: sketch.meta.clone(),
|
||||
@ -559,3 +575,101 @@ async fn analyze_faces(exec_state: &mut ExecState, args: &Args, face_infos: Vec<
|
||||
}
|
||||
faces
|
||||
}
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
async fn send_fn(args: &Args, id: uuid::Uuid, cmd: ModelingCmd, single_threaded: bool) -> Result<(), KclError> {
|
||||
if single_threaded {
|
||||
// In single threaded mode, we can safely batch the command.
|
||||
args.batch_modeling_cmd(id, cmd).await
|
||||
} else {
|
||||
// We cannot batch this call, because otherwise it might batch after say
|
||||
// a shell that makes this edge no longer relevant.
|
||||
args.send_modeling_cmd(id, cmd).await.map(|_| ())
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
#[allow(clippy::too_many_arguments)]
|
||||
async fn get_bg_edge_info_next(
|
||||
args: Args,
|
||||
curve_id: uuid::Uuid,
|
||||
sketch_id: uuid::Uuid,
|
||||
face_id: uuid::Uuid,
|
||||
edge_uuid: uuid::Uuid,
|
||||
get_all_edge_faces_uuid: uuid::Uuid,
|
||||
single_threaded: bool,
|
||||
) -> Result<(), KclError> {
|
||||
let next_adjacent_edge_id = args
|
||||
.send_modeling_cmd(
|
||||
edge_uuid,
|
||||
ModelingCmd::from(mcmd::Solid3dGetNextAdjacentEdge {
|
||||
edge_id: curve_id,
|
||||
object_id: sketch_id,
|
||||
face_id,
|
||||
}),
|
||||
)
|
||||
.await?;
|
||||
|
||||
// Get faces for next adjacent edge
|
||||
if let OkWebSocketResponseData::Modeling {
|
||||
modeling_response: OkModelingCmdResponse::Solid3dGetNextAdjacentEdge(next_adjacent_edge),
|
||||
} = next_adjacent_edge_id
|
||||
{
|
||||
if let Some(edge_id) = next_adjacent_edge.edge {
|
||||
send_fn(
|
||||
&args,
|
||||
get_all_edge_faces_uuid,
|
||||
ModelingCmd::from(mcmd::Solid3dGetAllEdgeFaces {
|
||||
edge_id,
|
||||
object_id: sketch_id,
|
||||
}),
|
||||
single_threaded,
|
||||
)
|
||||
.await?;
|
||||
}
|
||||
}
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
#[allow(clippy::too_many_arguments)]
|
||||
async fn get_bg_edge_info_opposite(
|
||||
args: Args,
|
||||
curve_id: uuid::Uuid,
|
||||
sketch_id: uuid::Uuid,
|
||||
face_id: uuid::Uuid,
|
||||
edge_uuid: uuid::Uuid,
|
||||
get_all_edge_faces_uuid: uuid::Uuid,
|
||||
single_threaded: bool,
|
||||
) -> Result<(), KclError> {
|
||||
let opposite_edge_id = args
|
||||
.send_modeling_cmd(
|
||||
edge_uuid,
|
||||
ModelingCmd::from(mcmd::Solid3dGetOppositeEdge {
|
||||
edge_id: curve_id,
|
||||
object_id: sketch_id,
|
||||
face_id,
|
||||
}),
|
||||
)
|
||||
.await?;
|
||||
|
||||
// Get faces for opposite edge
|
||||
if let OkWebSocketResponseData::Modeling {
|
||||
modeling_response: OkModelingCmdResponse::Solid3dGetOppositeEdge(opposite_edge),
|
||||
} = opposite_edge_id
|
||||
{
|
||||
send_fn(
|
||||
&args,
|
||||
get_all_edge_faces_uuid,
|
||||
ModelingCmd::from(mcmd::Solid3dGetAllEdgeFaces {
|
||||
edge_id: opposite_edge.edge,
|
||||
object_id: sketch_id,
|
||||
}),
|
||||
single_threaded,
|
||||
)
|
||||
.await?;
|
||||
}
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
@ -4,6 +4,7 @@ use anyhow::Result;
|
||||
use kcmc::{each_cmd as mcmd, length_unit::LengthUnit, shared::Angle, ModelingCmd};
|
||||
use kittycad_modeling_cmds::{self as kcmc, shared::Point3d};
|
||||
|
||||
use super::args::TyF64;
|
||||
use crate::{
|
||||
errors::KclError,
|
||||
execution::{
|
||||
@ -13,8 +14,6 @@ use crate::{
|
||||
std::{axis_or_reference::Axis3dOrEdgeReference, Args},
|
||||
};
|
||||
|
||||
use super::args::TyF64;
|
||||
|
||||
/// Create a helix.
|
||||
pub async fn helix(exec_state: &mut ExecState, args: Args) -> Result<KclValue, KclError> {
|
||||
let angle_start: TyF64 = args.get_kw_arg_typed("angleStart", &RuntimeType::degrees(), exec_state)?;
|
||||
@ -111,6 +110,7 @@ async fn inner_helix(
|
||||
|
||||
let helix_result = Box::new(HelixValue {
|
||||
value: id,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_id: id.into(),
|
||||
revolutions,
|
||||
angle_start,
|
||||
|
@ -176,6 +176,7 @@ async fn inner_loft(
|
||||
Ok(Box::new(
|
||||
do_post_extrude(
|
||||
&sketch,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
id.into(),
|
||||
TyF64::new(0.0, NumericType::mm()),
|
||||
false,
|
||||
|
@ -175,6 +175,7 @@ async fn inner_revolve(
|
||||
solids.push(
|
||||
do_post_extrude(
|
||||
sketch,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
id.into(),
|
||||
TyF64::new(0.0, NumericType::mm()),
|
||||
false,
|
||||
|
@ -5,14 +5,13 @@ use kcl_derive_docs::stdlib;
|
||||
use kcmc::{each_cmd as mcmd, length_unit::LengthUnit, ModelingCmd};
|
||||
use kittycad_modeling_cmds as kcmc;
|
||||
|
||||
use super::args::TyF64;
|
||||
use crate::{
|
||||
errors::{KclError, KclErrorDetails},
|
||||
execution::{types::RuntimeType, ExecState, KclValue, Solid},
|
||||
std::{sketch::FaceTag, Args},
|
||||
};
|
||||
|
||||
use super::args::TyF64;
|
||||
|
||||
/// Create a shell.
|
||||
pub async fn shell(exec_state: &mut ExecState, args: Args) -> Result<KclValue, KclError> {
|
||||
let solids = args.get_unlabeled_kw_arg_typed("solids", &RuntimeType::solids(), exec_state)?;
|
||||
|
@ -12,21 +12,22 @@ use parse_display::{Display, FromStr};
|
||||
use schemars::JsonSchema;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use super::utils::{point_to_len_unit, point_to_mm, untype_point, untyped_point_to_mm};
|
||||
use crate::execution::types::ArrayLen;
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
use crate::execution::{Artifact, ArtifactId, CodeRef, StartSketchOnFace, StartSketchOnPlane};
|
||||
use crate::{
|
||||
errors::{KclError, KclErrorDetails},
|
||||
execution::{
|
||||
types::{NumericType, PrimitiveType, RuntimeType, UnitLen},
|
||||
Artifact, ArtifactId, BasePath, CodeRef, ExecState, Face, GeoMeta, KclValue, Path, Plane, Point2d, Point3d,
|
||||
Sketch, SketchSurface, Solid, StartSketchOnFace, StartSketchOnPlane, TagEngineInfo, TagIdentifier,
|
||||
types::{ArrayLen, NumericType, PrimitiveType, RuntimeType, UnitLen},
|
||||
BasePath, ExecState, Face, GeoMeta, KclValue, Path, Plane, Point2d, Point3d, Sketch, SketchSurface, Solid,
|
||||
TagEngineInfo, TagIdentifier,
|
||||
},
|
||||
parsing::ast::types::TagNode,
|
||||
std::{
|
||||
args::{Args, TyF64},
|
||||
utils::{
|
||||
arc_center_and_end, get_tangential_arc_to_info, get_x_component, get_y_component,
|
||||
intersection_with_parallel_line, TangentialArcInfoInput,
|
||||
intersection_with_parallel_line, point_to_len_unit, point_to_mm, untype_point, untyped_point_to_mm,
|
||||
TangentialArcInfoInput,
|
||||
},
|
||||
},
|
||||
};
|
||||
@ -981,7 +982,7 @@ pub async fn start_sketch_on(exec_state: &mut ExecState, args: Args) -> Result<K
|
||||
|
||||
/// Start a new 2-dimensional sketch on a specific plane or face.
|
||||
///
|
||||
/// ### Sketch on Face Behavior
|
||||
/// ## Sketch on Face Behavior
|
||||
///
|
||||
/// There are some important behaviors to understand when sketching on a face:
|
||||
///
|
||||
@ -1180,12 +1181,15 @@ async fn inner_start_sketch_on(
|
||||
Ok(SketchSurface::Plane(plane))
|
||||
} else {
|
||||
// Create artifact used only by the UI, not the engine.
|
||||
let id = exec_state.next_uuid();
|
||||
exec_state.add_artifact(Artifact::StartSketchOnPlane(StartSketchOnPlane {
|
||||
id: ArtifactId::from(id),
|
||||
plane_id: plane.artifact_id,
|
||||
code_ref: CodeRef::placeholder(args.source_range),
|
||||
}));
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
{
|
||||
let id = exec_state.next_uuid();
|
||||
exec_state.add_artifact(Artifact::StartSketchOnPlane(StartSketchOnPlane {
|
||||
id: ArtifactId::from(id),
|
||||
plane_id: plane.artifact_id,
|
||||
code_ref: CodeRef::placeholder(args.source_range),
|
||||
}));
|
||||
}
|
||||
|
||||
Ok(SketchSurface::Plane(plane))
|
||||
}
|
||||
@ -1199,13 +1203,16 @@ async fn inner_start_sketch_on(
|
||||
};
|
||||
let face = start_sketch_on_face(solid, tag, exec_state, args).await?;
|
||||
|
||||
// Create artifact used only by the UI, not the engine.
|
||||
let id = exec_state.next_uuid();
|
||||
exec_state.add_artifact(Artifact::StartSketchOnFace(StartSketchOnFace {
|
||||
id: ArtifactId::from(id),
|
||||
face_id: face.artifact_id,
|
||||
code_ref: CodeRef::placeholder(args.source_range),
|
||||
}));
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
{
|
||||
// Create artifact used only by the UI, not the engine.
|
||||
let id = exec_state.next_uuid();
|
||||
exec_state.add_artifact(Artifact::StartSketchOnFace(StartSketchOnFace {
|
||||
id: ArtifactId::from(id),
|
||||
face_id: face.artifact_id,
|
||||
code_ref: CodeRef::placeholder(args.source_range),
|
||||
}));
|
||||
}
|
||||
|
||||
Ok(SketchSurface::Face(face))
|
||||
}
|
||||
@ -1222,6 +1229,7 @@ async fn start_sketch_on_face(
|
||||
|
||||
Ok(Box::new(Face {
|
||||
id: extrude_plane_id,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_id: extrude_plane_id.into(),
|
||||
value: tag.to_string(),
|
||||
// TODO: get this from the extrude plane data.
|
||||
@ -1401,6 +1409,7 @@ pub(crate) async fn inner_start_profile(
|
||||
let sketch = Sketch {
|
||||
id: path_id,
|
||||
original_id: path_id,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
artifact_id: path_id.into(),
|
||||
on: sketch_surface.clone(),
|
||||
paths: vec![],
|
||||
|
@ -195,6 +195,7 @@ async fn inner_sweep(
|
||||
solids.push(
|
||||
do_post_extrude(
|
||||
sketch,
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
id.into(),
|
||||
TyF64::new(0.0, NumericType::mm()),
|
||||
sectional.unwrap_or(false),
|
||||
|
@ -11,14 +11,13 @@ use kcmc::{
|
||||
};
|
||||
use kittycad_modeling_cmds as kcmc;
|
||||
|
||||
use super::args::TyF64;
|
||||
use crate::{
|
||||
errors::{KclError, KclErrorDetails},
|
||||
execution::{types::RuntimeType, ExecState, KclValue, SolidOrSketchOrImportedGeometry},
|
||||
std::Args,
|
||||
};
|
||||
|
||||
use super::args::TyF64;
|
||||
|
||||
/// 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_typed(
|
||||
|
@ -2,9 +2,8 @@ use std::f64::consts::PI;
|
||||
|
||||
use kittycad_modeling_cmds::shared::Angle;
|
||||
|
||||
use crate::execution::types::{NumericType, UnitLen};
|
||||
|
||||
use super::args::TyF64;
|
||||
use crate::execution::types::{NumericType, UnitLen};
|
||||
|
||||
pub(crate) fn untype_point(p: [TyF64; 2]) -> ([f64; 2], NumericType) {
|
||||
let (x, y, ty) = NumericType::combine_eq(p[0].clone(), p[1].clone());
|
||||
@ -236,9 +235,10 @@ pub fn calculate_circle_from_3_points(points: [Coords2d; 3]) -> CircleParams {
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
// Here you can bring your functions into scope
|
||||
use std::f64::consts::TAU;
|
||||
|
||||
use approx::assert_relative_eq;
|
||||
use pretty_assertions::assert_eq;
|
||||
use std::f64::consts::TAU;
|
||||
|
||||
use super::{calculate_circle_center, get_x_component, get_y_component, Angle};
|
||||
|
||||
|
@ -21,7 +21,7 @@ pub struct RequestBody {
|
||||
pub async fn execute_and_snapshot(code: &str, current_file: Option<PathBuf>) -> Result<image::DynamicImage, ExecError> {
|
||||
let ctx = new_context(true, current_file).await?;
|
||||
let program = Program::parse_no_errs(code).map_err(KclErrorWithOutputs::no_outputs)?;
|
||||
let res = do_execute_and_snapshot(&ctx, program)
|
||||
let res = do_execute_and_snapshot(&ctx, program, false)
|
||||
.await
|
||||
.map(|(_, _, snap)| snap)
|
||||
.map_err(|err| err.error);
|
||||
@ -31,13 +31,14 @@ pub async fn execute_and_snapshot(code: &str, current_file: Option<PathBuf>) ->
|
||||
|
||||
/// Executes a kcl program and takes a snapshot of the result.
|
||||
/// This returns the bytes of the snapshot.
|
||||
pub async fn execute_and_snapshot_ast(
|
||||
#[cfg(test)]
|
||||
pub async fn execute_and_snapshot_ast_single_threaded(
|
||||
ast: Program,
|
||||
current_file: Option<PathBuf>,
|
||||
with_export_step: bool,
|
||||
) -> Result<(ExecState, EnvironmentRef, image::DynamicImage, Option<Vec<u8>>), ExecErrorWithState> {
|
||||
let ctx = new_context(true, current_file).await?;
|
||||
let (exec_state, env, img) = match do_execute_and_snapshot(&ctx, ast).await {
|
||||
let (exec_state, env, img) = match do_execute_and_snapshot(&ctx, ast, true).await {
|
||||
Ok((exec_state, env_ref, img)) => (exec_state, env_ref, img),
|
||||
Err(err) => {
|
||||
// If there was an error executing the program, return it.
|
||||
@ -72,7 +73,7 @@ pub async fn execute_and_snapshot_no_auth(
|
||||
) -> Result<(image::DynamicImage, EnvironmentRef), ExecError> {
|
||||
let ctx = new_context(false, current_file).await?;
|
||||
let program = Program::parse_no_errs(code).map_err(KclErrorWithOutputs::no_outputs)?;
|
||||
let res = do_execute_and_snapshot(&ctx, program)
|
||||
let res = do_execute_and_snapshot(&ctx, program, false)
|
||||
.await
|
||||
.map(|(_, env_ref, snap)| (snap, env_ref))
|
||||
.map_err(|err| err.error);
|
||||
@ -83,12 +84,15 @@ pub async fn execute_and_snapshot_no_auth(
|
||||
async fn do_execute_and_snapshot(
|
||||
ctx: &ExecutorContext,
|
||||
program: Program,
|
||||
single_threaded: bool,
|
||||
) -> Result<(ExecState, EnvironmentRef, image::DynamicImage), ExecErrorWithState> {
|
||||
let mut exec_state = ExecState::new(ctx);
|
||||
let result = ctx
|
||||
.run_single_threaded(&program, &mut exec_state)
|
||||
.await
|
||||
.map_err(|err| ExecErrorWithState::new(err.into(), exec_state.clone()))?;
|
||||
let result = if single_threaded {
|
||||
ctx.run_single_threaded(&program, &mut exec_state).await
|
||||
} else {
|
||||
ctx.run(&program, &mut exec_state).await
|
||||
}
|
||||
.map_err(|err| ExecErrorWithState::new(err.into(), exec_state.clone()))?;
|
||||
for e in exec_state.errors() {
|
||||
if e.severity.is_err() {
|
||||
return Err(ExecErrorWithState::new(
|
||||
|
@ -188,8 +188,10 @@ pub(crate) async fn import_universe(
|
||||
continue;
|
||||
}
|
||||
|
||||
let source_range = SourceRange::from(import_stmt.clone());
|
||||
let attrs = &import_stmt.outer_attrs;
|
||||
let module_id = ctx
|
||||
.open_module(&import_stmt.path, &[], exec_state, Default::default())
|
||||
.open_module(&import_stmt.path, attrs, exec_state, source_range)
|
||||
.await?;
|
||||
|
||||
let repr = {
|
||||
|
@ -241,6 +241,15 @@ description: Artifact commands angled_line.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -251,6 +260,15 @@ description: Artifact commands angled_line.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -283,19 +301,19 @@ description: Artifact commands angled_line.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -330,19 +348,19 @@ description: Artifact commands angled_line.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -377,19 +395,19 @@ description: Artifact commands angled_line.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -424,19 +442,19 @@ description: Artifact commands angled_line.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -467,15 +485,6 @@ description: Artifact commands angled_line.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -486,6 +495,15 @@ description: Artifact commands angled_line.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -496,24 +514,6 @@ description: Artifact commands angled_line.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -21,10 +21,17 @@ flowchart LR
|
||||
17["Cap Start"]
|
||||
18["Cap End"]
|
||||
19["SweepEdge Opposite"]
|
||||
20["SweepEdge Opposite"]
|
||||
20["SweepEdge Adjacent"]
|
||||
21["SweepEdge Opposite"]
|
||||
22["SweepEdge Opposite"]
|
||||
22["SweepEdge Adjacent"]
|
||||
23["SweepEdge Opposite"]
|
||||
24["SweepEdge Adjacent"]
|
||||
25["SweepEdge Opposite"]
|
||||
26["SweepEdge Adjacent"]
|
||||
27["SweepEdge Opposite"]
|
||||
28["SweepEdge Adjacent"]
|
||||
29["SweepEdge Opposite"]
|
||||
30["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -35,21 +42,28 @@ flowchart LR
|
||||
2 ---- 10
|
||||
2 --- 9
|
||||
3 --- 16
|
||||
3 --- 23
|
||||
3 --- 29
|
||||
3 --- 30
|
||||
3 x--> 17
|
||||
4 --- 15
|
||||
4 --- 22
|
||||
4 --- 27
|
||||
4 --- 28
|
||||
4 x--> 17
|
||||
5 --- 14
|
||||
5 --- 21
|
||||
5 --- 25
|
||||
5 --- 26
|
||||
5 x--> 17
|
||||
6 --- 13
|
||||
6 --- 20
|
||||
6 --- 23
|
||||
6 --- 24
|
||||
6 x--> 17
|
||||
7 --- 12
|
||||
7 --- 19
|
||||
7 --- 21
|
||||
7 --- 22
|
||||
7 x--> 17
|
||||
8 --- 11
|
||||
8 --- 19
|
||||
8 --- 20
|
||||
8 x--> 17
|
||||
10 --- 11
|
||||
10 --- 12
|
||||
@ -64,14 +78,35 @@ flowchart LR
|
||||
10 --- 21
|
||||
10 --- 22
|
||||
10 --- 23
|
||||
19 <--x 12
|
||||
10 --- 24
|
||||
10 --- 25
|
||||
10 --- 26
|
||||
10 --- 27
|
||||
10 --- 28
|
||||
10 --- 29
|
||||
10 --- 30
|
||||
19 <--x 11
|
||||
19 <--x 18
|
||||
20 <--x 13
|
||||
20 <--x 18
|
||||
21 <--x 14
|
||||
20 <--x 11
|
||||
20 <--x 16
|
||||
21 <--x 12
|
||||
21 <--x 18
|
||||
22 <--x 15
|
||||
22 <--x 18
|
||||
23 <--x 16
|
||||
22 <--x 11
|
||||
22 <--x 12
|
||||
23 <--x 13
|
||||
23 <--x 18
|
||||
24 <--x 12
|
||||
24 <--x 13
|
||||
25 <--x 14
|
||||
25 <--x 18
|
||||
26 <--x 13
|
||||
26 <--x 14
|
||||
27 <--x 15
|
||||
27 <--x 18
|
||||
28 <--x 14
|
||||
28 <--x 15
|
||||
29 <--x 16
|
||||
29 <--x 18
|
||||
30 <--x 15
|
||||
30 <--x 16
|
||||
```
|
||||
|
@ -224,6 +224,15 @@ description: Artifact commands artifact_graph_example_code1.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -234,6 +243,15 @@ description: Artifact commands artifact_graph_example_code1.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -266,19 +284,19 @@ description: Artifact commands artifact_graph_example_code1.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -313,19 +331,19 @@ description: Artifact commands artifact_graph_example_code1.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -356,15 +374,6 @@ description: Artifact commands artifact_graph_example_code1.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -375,6 +384,15 @@ description: Artifact commands artifact_graph_example_code1.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -394,24 +412,6 @@ description: Artifact commands artifact_graph_example_code1.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -569,6 +569,15 @@ description: Artifact commands artifact_graph_example_code1.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -579,6 +588,15 @@ description: Artifact commands artifact_graph_example_code1.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -611,19 +629,19 @@ description: Artifact commands artifact_graph_example_code1.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -654,15 +672,6 @@ description: Artifact commands artifact_graph_example_code1.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -673,6 +682,15 @@ description: Artifact commands artifact_graph_example_code1.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -683,24 +701,6 @@ description: Artifact commands artifact_graph_example_code1.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -9,13 +9,13 @@ flowchart LR
|
||||
7["Segment<br>[239, 246, 0]"]
|
||||
8[Solid2d]
|
||||
end
|
||||
subgraph path20 [Path]
|
||||
20["Path<br>[390, 417, 0]"]
|
||||
21["Segment<br>[423, 441, 0]"]
|
||||
22["Segment<br>[447, 466, 0]"]
|
||||
23["Segment<br>[472, 528, 0]"]
|
||||
24["Segment<br>[534, 541, 0]"]
|
||||
25[Solid2d]
|
||||
subgraph path25 [Path]
|
||||
25["Path<br>[390, 417, 0]"]
|
||||
26["Segment<br>[423, 441, 0]"]
|
||||
27["Segment<br>[447, 466, 0]"]
|
||||
28["Segment<br>[472, 528, 0]"]
|
||||
29["Segment<br>[534, 541, 0]"]
|
||||
30[Solid2d]
|
||||
end
|
||||
1["Plane<br>[12, 31, 0]"]
|
||||
9["Sweep Extrusion<br>[260, 292, 0]"]
|
||||
@ -26,17 +26,26 @@ flowchart LR
|
||||
14["Cap Start"]
|
||||
15["Cap End"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Opposite"]
|
||||
17["SweepEdge Adjacent"]
|
||||
18["SweepEdge Opposite"]
|
||||
19["EdgeCut Fillet<br>[298, 332, 0]"]
|
||||
26["Sweep Extrusion<br>[555, 585, 0]"]
|
||||
27[Wall]
|
||||
28[Wall]
|
||||
29[Wall]
|
||||
30["Cap End"]
|
||||
31["SweepEdge Opposite"]
|
||||
32["SweepEdge Opposite"]
|
||||
33["StartSketchOnFace<br>[345, 384, 0]"]
|
||||
19["SweepEdge Adjacent"]
|
||||
20["SweepEdge Opposite"]
|
||||
21["SweepEdge Adjacent"]
|
||||
22["SweepEdge Opposite"]
|
||||
23["SweepEdge Adjacent"]
|
||||
24["EdgeCut Fillet<br>[298, 332, 0]"]
|
||||
31["Sweep Extrusion<br>[555, 585, 0]"]
|
||||
32[Wall]
|
||||
33[Wall]
|
||||
34[Wall]
|
||||
35["Cap End"]
|
||||
36["SweepEdge Opposite"]
|
||||
37["SweepEdge Adjacent"]
|
||||
38["SweepEdge Opposite"]
|
||||
39["SweepEdge Adjacent"]
|
||||
40["SweepEdge Opposite"]
|
||||
41["SweepEdge Adjacent"]
|
||||
42["StartSketchOnFace<br>[345, 384, 0]"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -46,16 +55,21 @@ flowchart LR
|
||||
2 ---- 9
|
||||
2 --- 8
|
||||
3 --- 13
|
||||
3 --- 18
|
||||
3 --- 22
|
||||
3 --- 23
|
||||
3 x--> 15
|
||||
4 --- 12
|
||||
4 --- 17
|
||||
4 --- 19
|
||||
4 --- 20
|
||||
4 --- 21
|
||||
4 --- 24
|
||||
4 x--> 15
|
||||
5 --- 11
|
||||
5 --- 16
|
||||
5 --- 18
|
||||
5 --- 19
|
||||
5 x--> 15
|
||||
6 --- 10
|
||||
6 --- 16
|
||||
6 --- 17
|
||||
6 x--> 15
|
||||
9 --- 10
|
||||
9 --- 11
|
||||
@ -66,36 +80,67 @@ flowchart LR
|
||||
9 --- 16
|
||||
9 --- 17
|
||||
9 --- 18
|
||||
11 --- 20
|
||||
16 <--x 11
|
||||
9 --- 19
|
||||
9 --- 20
|
||||
9 --- 21
|
||||
9 --- 22
|
||||
9 --- 23
|
||||
11 --- 25
|
||||
16 <--x 10
|
||||
16 <--x 14
|
||||
17 <--x 12
|
||||
17 <--x 14
|
||||
18 <--x 13
|
||||
17 <--x 10
|
||||
17 <--x 13
|
||||
18 <--x 11
|
||||
18 <--x 14
|
||||
20 --- 21
|
||||
20 --- 22
|
||||
20 --- 23
|
||||
20 --- 24
|
||||
20 ---- 26
|
||||
20 --- 25
|
||||
21 --- 29
|
||||
21 --- 32
|
||||
19 <--x 10
|
||||
19 <--x 11
|
||||
20 <--x 12
|
||||
20 <--x 14
|
||||
21 <--x 11
|
||||
22 --- 28
|
||||
22 --- 31
|
||||
22 <--x 11
|
||||
23 --- 27
|
||||
23 <--x 11
|
||||
26 --- 27
|
||||
26 --- 28
|
||||
26 --- 29
|
||||
26 --- 30
|
||||
26 --- 31
|
||||
26 --- 32
|
||||
31 <--x 28
|
||||
31 <--x 30
|
||||
32 <--x 29
|
||||
32 <--x 30
|
||||
11 <--x 33
|
||||
21 <--x 12
|
||||
22 <--x 13
|
||||
22 <--x 14
|
||||
23 <--x 12
|
||||
23 <--x 13
|
||||
25 --- 26
|
||||
25 --- 27
|
||||
25 --- 28
|
||||
25 --- 29
|
||||
25 ---- 31
|
||||
25 --- 30
|
||||
26 --- 34
|
||||
26 --- 40
|
||||
26 --- 41
|
||||
26 <--x 11
|
||||
27 --- 33
|
||||
27 --- 38
|
||||
27 --- 39
|
||||
27 <--x 11
|
||||
28 --- 32
|
||||
28 --- 36
|
||||
28 --- 37
|
||||
28 <--x 11
|
||||
31 --- 32
|
||||
31 --- 33
|
||||
31 --- 34
|
||||
31 --- 35
|
||||
31 --- 36
|
||||
31 --- 37
|
||||
31 --- 38
|
||||
31 --- 39
|
||||
31 --- 40
|
||||
31 --- 41
|
||||
36 <--x 32
|
||||
36 <--x 35
|
||||
37 <--x 32
|
||||
37 <--x 34
|
||||
38 <--x 33
|
||||
38 <--x 35
|
||||
39 <--x 32
|
||||
39 <--x 33
|
||||
40 <--x 34
|
||||
40 <--x 35
|
||||
41 <--x 33
|
||||
41 <--x 34
|
||||
11 <--x 42
|
||||
```
|
||||
|
@ -207,6 +207,15 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -217,6 +226,15 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -249,19 +267,19 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -292,15 +310,6 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -311,6 +320,15 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -330,24 +348,6 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -493,6 +493,15 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -503,6 +512,15 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -535,19 +553,19 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -578,15 +596,6 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -597,6 +606,15 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -616,24 +634,6 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -779,6 +779,15 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -789,6 +798,15 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -821,19 +839,19 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -864,15 +882,6 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -883,6 +892,15 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -902,24 +920,6 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1065,6 +1065,15 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1075,6 +1084,15 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1107,19 +1125,19 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1150,15 +1168,6 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1169,6 +1178,15 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1179,24 +1197,6 @@ description: Artifact commands artifact_graph_sketch_on_face_etc.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -8,29 +8,29 @@ flowchart LR
|
||||
6["Segment<br>[191, 198, 0]"]
|
||||
7[Solid2d]
|
||||
end
|
||||
subgraph path16 [Path]
|
||||
16["Path<br>[300, 330, 0]"]
|
||||
17["Segment<br>[336, 354, 0]"]
|
||||
18["Segment<br>[360, 379, 0]"]
|
||||
19["Segment<br>[385, 441, 0]"]
|
||||
20["Segment<br>[447, 454, 0]"]
|
||||
21[Solid2d]
|
||||
subgraph path20 [Path]
|
||||
20["Path<br>[300, 330, 0]"]
|
||||
21["Segment<br>[336, 354, 0]"]
|
||||
22["Segment<br>[360, 379, 0]"]
|
||||
23["Segment<br>[385, 441, 0]"]
|
||||
24["Segment<br>[447, 454, 0]"]
|
||||
25[Solid2d]
|
||||
end
|
||||
subgraph path29 [Path]
|
||||
29["Path<br>[556, 583, 0]"]
|
||||
30["Segment<br>[589, 623, 0]"]
|
||||
31["Segment<br>[629, 648, 0]"]
|
||||
32["Segment<br>[654, 710, 0]"]
|
||||
33["Segment<br>[716, 723, 0]"]
|
||||
34[Solid2d]
|
||||
subgraph path37 [Path]
|
||||
37["Path<br>[556, 583, 0]"]
|
||||
38["Segment<br>[589, 623, 0]"]
|
||||
39["Segment<br>[629, 648, 0]"]
|
||||
40["Segment<br>[654, 710, 0]"]
|
||||
41["Segment<br>[716, 723, 0]"]
|
||||
42[Solid2d]
|
||||
end
|
||||
subgraph path42 [Path]
|
||||
42["Path<br>[825, 852, 0]"]
|
||||
43["Segment<br>[858, 878, 0]"]
|
||||
44["Segment<br>[884, 905, 0]"]
|
||||
45["Segment<br>[911, 967, 0]"]
|
||||
46["Segment<br>[973, 980, 0]"]
|
||||
47[Solid2d]
|
||||
subgraph path54 [Path]
|
||||
54["Path<br>[825, 852, 0]"]
|
||||
55["Segment<br>[858, 878, 0]"]
|
||||
56["Segment<br>[884, 905, 0]"]
|
||||
57["Segment<br>[911, 967, 0]"]
|
||||
58["Segment<br>[973, 980, 0]"]
|
||||
59[Solid2d]
|
||||
end
|
||||
1["Plane<br>[12, 29, 0]"]
|
||||
8["Sweep Extrusion<br>[212, 242, 0]"]
|
||||
@ -40,31 +40,47 @@ flowchart LR
|
||||
12["Cap Start"]
|
||||
13["Cap End"]
|
||||
14["SweepEdge Opposite"]
|
||||
15["SweepEdge Opposite"]
|
||||
22["Sweep Extrusion<br>[468, 498, 0]"]
|
||||
23[Wall]
|
||||
24[Wall]
|
||||
25[Wall]
|
||||
26["Cap End"]
|
||||
27["SweepEdge Opposite"]
|
||||
28["SweepEdge Opposite"]
|
||||
35["Sweep Extrusion<br>[737, 767, 0]"]
|
||||
36[Wall]
|
||||
37[Wall]
|
||||
38[Wall]
|
||||
39["Cap End"]
|
||||
40["SweepEdge Opposite"]
|
||||
41["SweepEdge Opposite"]
|
||||
48["Sweep Extrusion<br>[994, 1024, 0]"]
|
||||
49[Wall]
|
||||
50[Wall]
|
||||
51[Wall]
|
||||
52["Cap End"]
|
||||
53["SweepEdge Opposite"]
|
||||
54["SweepEdge Opposite"]
|
||||
55["StartSketchOnFace<br>[255, 294, 0]"]
|
||||
56["StartSketchOnFace<br>[511, 550, 0]"]
|
||||
57["StartSketchOnFace<br>[780, 819, 0]"]
|
||||
15["SweepEdge Adjacent"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Adjacent"]
|
||||
18["SweepEdge Opposite"]
|
||||
19["SweepEdge Adjacent"]
|
||||
26["Sweep Extrusion<br>[468, 498, 0]"]
|
||||
27[Wall]
|
||||
28[Wall]
|
||||
29[Wall]
|
||||
30["Cap End"]
|
||||
31["SweepEdge Opposite"]
|
||||
32["SweepEdge Adjacent"]
|
||||
33["SweepEdge Opposite"]
|
||||
34["SweepEdge Adjacent"]
|
||||
35["SweepEdge Opposite"]
|
||||
36["SweepEdge Adjacent"]
|
||||
43["Sweep Extrusion<br>[737, 767, 0]"]
|
||||
44[Wall]
|
||||
45[Wall]
|
||||
46[Wall]
|
||||
47["Cap End"]
|
||||
48["SweepEdge Opposite"]
|
||||
49["SweepEdge Adjacent"]
|
||||
50["SweepEdge Opposite"]
|
||||
51["SweepEdge Adjacent"]
|
||||
52["SweepEdge Opposite"]
|
||||
53["SweepEdge Adjacent"]
|
||||
60["Sweep Extrusion<br>[994, 1024, 0]"]
|
||||
61[Wall]
|
||||
62[Wall]
|
||||
63[Wall]
|
||||
64["Cap End"]
|
||||
65["SweepEdge Opposite"]
|
||||
66["SweepEdge Adjacent"]
|
||||
67["SweepEdge Opposite"]
|
||||
68["SweepEdge Adjacent"]
|
||||
69["SweepEdge Opposite"]
|
||||
70["SweepEdge Adjacent"]
|
||||
71["StartSketchOnFace<br>[255, 294, 0]"]
|
||||
72["StartSketchOnFace<br>[511, 550, 0]"]
|
||||
73["StartSketchOnFace<br>[780, 819, 0]"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -73,12 +89,16 @@ flowchart LR
|
||||
2 ---- 8
|
||||
2 --- 7
|
||||
3 --- 11
|
||||
3 --- 15
|
||||
3 --- 18
|
||||
3 --- 19
|
||||
3 x--> 12
|
||||
4 --- 10
|
||||
4 --- 14
|
||||
4 --- 16
|
||||
4 --- 17
|
||||
4 x--> 12
|
||||
5 --- 9
|
||||
5 --- 14
|
||||
5 --- 15
|
||||
5 x--> 12
|
||||
8 --- 9
|
||||
8 --- 10
|
||||
@ -87,86 +107,146 @@ flowchart LR
|
||||
8 --- 13
|
||||
8 --- 14
|
||||
8 --- 15
|
||||
10 --- 16
|
||||
14 <--x 10
|
||||
8 --- 16
|
||||
8 --- 17
|
||||
8 --- 18
|
||||
8 --- 19
|
||||
10 --- 20
|
||||
14 <--x 9
|
||||
14 <--x 13
|
||||
15 <--x 9
|
||||
15 <--x 11
|
||||
15 <--x 13
|
||||
16 --- 17
|
||||
16 --- 18
|
||||
16 --- 19
|
||||
16 --- 20
|
||||
16 ---- 22
|
||||
16 --- 21
|
||||
17 --- 25
|
||||
17 --- 28
|
||||
16 <--x 10
|
||||
16 <--x 13
|
||||
17 <--x 9
|
||||
17 <--x 10
|
||||
18 --- 24
|
||||
18 --- 27
|
||||
18 <--x 10
|
||||
19 --- 23
|
||||
18 <--x 11
|
||||
18 <--x 13
|
||||
19 <--x 10
|
||||
22 --- 23
|
||||
22 --- 24
|
||||
22 --- 25
|
||||
22 --- 26
|
||||
22 --- 27
|
||||
19 <--x 11
|
||||
20 --- 21
|
||||
20 --- 22
|
||||
20 --- 23
|
||||
20 --- 24
|
||||
20 ---- 26
|
||||
20 --- 25
|
||||
21 --- 29
|
||||
21 --- 35
|
||||
21 --- 36
|
||||
21 <--x 10
|
||||
22 --- 28
|
||||
22 --- 33
|
||||
22 --- 34
|
||||
22 <--x 10
|
||||
23 --- 27
|
||||
23 --- 31
|
||||
23 --- 32
|
||||
23 <--x 10
|
||||
26 --- 27
|
||||
26 --- 28
|
||||
26 --- 29
|
||||
27 <--x 24
|
||||
27 <--x 26
|
||||
28 <--x 25
|
||||
28 <--x 26
|
||||
29 --- 30
|
||||
29 --- 31
|
||||
29 --- 32
|
||||
29 --- 33
|
||||
29 ---- 35
|
||||
29 --- 34
|
||||
30 --- 38
|
||||
30 --- 41
|
||||
30 <--x 26
|
||||
31 --- 37
|
||||
31 --- 40
|
||||
31 <--x 26
|
||||
32 --- 36
|
||||
32 <--x 26
|
||||
35 --- 36
|
||||
35 --- 37
|
||||
35 --- 38
|
||||
35 --- 39
|
||||
35 --- 40
|
||||
35 --- 41
|
||||
38 --- 42
|
||||
40 <--x 37
|
||||
40 <--x 39
|
||||
41 <--x 38
|
||||
41 <--x 39
|
||||
42 --- 43
|
||||
42 --- 44
|
||||
42 --- 45
|
||||
42 --- 46
|
||||
42 ---- 48
|
||||
42 --- 47
|
||||
26 --- 30
|
||||
26 --- 31
|
||||
26 --- 32
|
||||
26 --- 33
|
||||
26 --- 34
|
||||
26 --- 35
|
||||
26 --- 36
|
||||
30 --- 37
|
||||
31 <--x 27
|
||||
31 <--x 30
|
||||
32 <--x 27
|
||||
32 <--x 29
|
||||
33 <--x 28
|
||||
33 <--x 30
|
||||
34 <--x 27
|
||||
34 <--x 28
|
||||
35 <--x 29
|
||||
35 <--x 30
|
||||
36 <--x 28
|
||||
36 <--x 29
|
||||
37 --- 38
|
||||
37 --- 39
|
||||
37 --- 40
|
||||
37 --- 41
|
||||
37 ---- 43
|
||||
37 --- 42
|
||||
38 --- 46
|
||||
38 --- 52
|
||||
38 --- 53
|
||||
38 <--x 30
|
||||
39 --- 45
|
||||
39 --- 50
|
||||
39 --- 51
|
||||
39 <--x 30
|
||||
40 --- 44
|
||||
40 --- 48
|
||||
40 --- 49
|
||||
40 <--x 30
|
||||
43 --- 44
|
||||
43 --- 45
|
||||
43 --- 46
|
||||
43 --- 47
|
||||
43 --- 48
|
||||
43 --- 49
|
||||
43 --- 50
|
||||
43 --- 51
|
||||
43 --- 54
|
||||
43 <--x 38
|
||||
44 --- 50
|
||||
44 --- 53
|
||||
44 <--x 38
|
||||
45 --- 49
|
||||
45 <--x 38
|
||||
48 --- 49
|
||||
48 --- 50
|
||||
48 --- 51
|
||||
48 --- 52
|
||||
48 --- 53
|
||||
48 --- 54
|
||||
53 <--x 50
|
||||
53 <--x 52
|
||||
54 <--x 51
|
||||
54 <--x 52
|
||||
10 <--x 55
|
||||
26 <--x 56
|
||||
38 <--x 57
|
||||
43 --- 52
|
||||
43 --- 53
|
||||
46 --- 54
|
||||
48 <--x 44
|
||||
48 <--x 47
|
||||
49 <--x 44
|
||||
49 <--x 46
|
||||
50 <--x 45
|
||||
50 <--x 47
|
||||
51 <--x 44
|
||||
51 <--x 45
|
||||
52 <--x 46
|
||||
52 <--x 47
|
||||
53 <--x 45
|
||||
53 <--x 46
|
||||
54 --- 55
|
||||
54 --- 56
|
||||
54 --- 57
|
||||
54 --- 58
|
||||
54 ---- 60
|
||||
54 --- 59
|
||||
55 --- 63
|
||||
55 --- 69
|
||||
55 --- 70
|
||||
55 <--x 46
|
||||
56 --- 62
|
||||
56 --- 67
|
||||
56 --- 68
|
||||
56 <--x 46
|
||||
57 --- 61
|
||||
57 --- 65
|
||||
57 --- 66
|
||||
57 <--x 46
|
||||
60 --- 61
|
||||
60 --- 62
|
||||
60 --- 63
|
||||
60 --- 64
|
||||
60 --- 65
|
||||
60 --- 66
|
||||
60 --- 67
|
||||
60 --- 68
|
||||
60 --- 69
|
||||
60 --- 70
|
||||
65 <--x 61
|
||||
65 <--x 64
|
||||
66 <--x 61
|
||||
66 <--x 63
|
||||
67 <--x 62
|
||||
67 <--x 64
|
||||
68 <--x 61
|
||||
68 <--x 62
|
||||
69 <--x 63
|
||||
69 <--x 64
|
||||
70 <--x 62
|
||||
70 <--x 63
|
||||
10 <--x 71
|
||||
30 <--x 72
|
||||
46 <--x 73
|
||||
```
|
||||
|
@ -224,6 +224,15 @@ description: Artifact commands assembly_mixed_units_cubes.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -234,6 +243,15 @@ description: Artifact commands assembly_mixed_units_cubes.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -266,19 +284,19 @@ description: Artifact commands assembly_mixed_units_cubes.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -313,19 +331,19 @@ description: Artifact commands assembly_mixed_units_cubes.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -356,15 +374,6 @@ description: Artifact commands assembly_mixed_units_cubes.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -375,6 +384,15 @@ description: Artifact commands assembly_mixed_units_cubes.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -394,24 +412,6 @@ description: Artifact commands assembly_mixed_units_cubes.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -607,6 +607,15 @@ description: Artifact commands assembly_mixed_units_cubes.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -617,6 +626,15 @@ description: Artifact commands assembly_mixed_units_cubes.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -649,19 +667,19 @@ description: Artifact commands assembly_mixed_units_cubes.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -696,19 +714,19 @@ description: Artifact commands assembly_mixed_units_cubes.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -739,15 +757,6 @@ description: Artifact commands assembly_mixed_units_cubes.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -758,6 +767,15 @@ description: Artifact commands assembly_mixed_units_cubes.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -768,24 +786,6 @@ description: Artifact commands assembly_mixed_units_cubes.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -9,14 +9,14 @@ flowchart LR
|
||||
7["Segment<br>[255, 262, 6]"]
|
||||
8[Solid2d]
|
||||
end
|
||||
subgraph path20 [Path]
|
||||
20["Path<br>[76, 114, 7]"]
|
||||
21["Segment<br>[120, 137, 7]"]
|
||||
22["Segment<br>[143, 161, 7]"]
|
||||
23["Segment<br>[167, 185, 7]"]
|
||||
24["Segment<br>[191, 247, 7]"]
|
||||
25["Segment<br>[253, 260, 7]"]
|
||||
26[Solid2d]
|
||||
subgraph path25 [Path]
|
||||
25["Path<br>[76, 114, 7]"]
|
||||
26["Segment<br>[120, 137, 7]"]
|
||||
27["Segment<br>[143, 161, 7]"]
|
||||
28["Segment<br>[167, 185, 7]"]
|
||||
29["Segment<br>[191, 247, 7]"]
|
||||
30["Segment<br>[253, 260, 7]"]
|
||||
31[Solid2d]
|
||||
end
|
||||
1["Plane<br>[47, 66, 6]"]
|
||||
9["Sweep Extrusion<br>[268, 290, 6]"]
|
||||
@ -27,19 +27,29 @@ flowchart LR
|
||||
14["Cap Start"]
|
||||
15["Cap End"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Opposite"]
|
||||
17["SweepEdge Adjacent"]
|
||||
18["SweepEdge Opposite"]
|
||||
19["Plane<br>[47, 66, 7]"]
|
||||
27["Sweep Extrusion<br>[266, 288, 7]"]
|
||||
28[Wall]
|
||||
29[Wall]
|
||||
30[Wall]
|
||||
31[Wall]
|
||||
32["Cap Start"]
|
||||
33["Cap End"]
|
||||
34["SweepEdge Opposite"]
|
||||
35["SweepEdge Opposite"]
|
||||
36["SweepEdge Opposite"]
|
||||
19["SweepEdge Adjacent"]
|
||||
20["SweepEdge Opposite"]
|
||||
21["SweepEdge Adjacent"]
|
||||
22["SweepEdge Opposite"]
|
||||
23["SweepEdge Adjacent"]
|
||||
24["Plane<br>[47, 66, 7]"]
|
||||
32["Sweep Extrusion<br>[266, 288, 7]"]
|
||||
33[Wall]
|
||||
34[Wall]
|
||||
35[Wall]
|
||||
36[Wall]
|
||||
37["Cap Start"]
|
||||
38["Cap End"]
|
||||
39["SweepEdge Opposite"]
|
||||
40["SweepEdge Adjacent"]
|
||||
41["SweepEdge Opposite"]
|
||||
42["SweepEdge Adjacent"]
|
||||
43["SweepEdge Opposite"]
|
||||
44["SweepEdge Adjacent"]
|
||||
45["SweepEdge Opposite"]
|
||||
46["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -49,15 +59,20 @@ flowchart LR
|
||||
2 ---- 9
|
||||
2 --- 8
|
||||
3 --- 13
|
||||
3 --- 18
|
||||
3 --- 22
|
||||
3 --- 23
|
||||
3 x--> 14
|
||||
4 --- 12
|
||||
4 --- 17
|
||||
4 --- 20
|
||||
4 --- 21
|
||||
4 x--> 14
|
||||
5 --- 11
|
||||
5 --- 16
|
||||
5 --- 18
|
||||
5 --- 19
|
||||
5 x--> 14
|
||||
6 --- 10
|
||||
6 --- 16
|
||||
6 --- 17
|
||||
6 x--> 14
|
||||
9 --- 10
|
||||
9 --- 11
|
||||
@ -68,44 +83,79 @@ flowchart LR
|
||||
9 --- 16
|
||||
9 --- 17
|
||||
9 --- 18
|
||||
16 <--x 11
|
||||
9 --- 19
|
||||
9 --- 20
|
||||
9 --- 21
|
||||
9 --- 22
|
||||
9 --- 23
|
||||
16 <--x 10
|
||||
16 <--x 15
|
||||
17 <--x 12
|
||||
17 <--x 15
|
||||
18 <--x 13
|
||||
17 <--x 10
|
||||
17 <--x 13
|
||||
18 <--x 11
|
||||
18 <--x 15
|
||||
19 --- 20
|
||||
20 --- 21
|
||||
20 --- 22
|
||||
20 --- 23
|
||||
20 --- 24
|
||||
20 --- 25
|
||||
20 ---- 27
|
||||
20 --- 26
|
||||
21 --- 31
|
||||
21 --- 36
|
||||
21 x--> 32
|
||||
22 --- 30
|
||||
22 --- 35
|
||||
22 x--> 32
|
||||
23 --- 29
|
||||
23 --- 34
|
||||
23 x--> 32
|
||||
24 --- 28
|
||||
24 x--> 32
|
||||
27 --- 28
|
||||
27 --- 29
|
||||
27 --- 30
|
||||
27 --- 31
|
||||
27 --- 32
|
||||
27 --- 33
|
||||
27 --- 34
|
||||
19 <--x 10
|
||||
19 <--x 11
|
||||
20 <--x 12
|
||||
20 <--x 15
|
||||
21 <--x 11
|
||||
21 <--x 12
|
||||
22 <--x 13
|
||||
22 <--x 15
|
||||
23 <--x 12
|
||||
23 <--x 13
|
||||
24 --- 25
|
||||
25 --- 26
|
||||
25 --- 27
|
||||
25 --- 28
|
||||
25 --- 29
|
||||
25 --- 30
|
||||
25 ---- 32
|
||||
25 --- 31
|
||||
26 --- 36
|
||||
26 --- 45
|
||||
26 --- 46
|
||||
26 x--> 37
|
||||
27 --- 35
|
||||
27 --- 36
|
||||
34 <--x 29
|
||||
34 <--x 33
|
||||
35 <--x 30
|
||||
35 <--x 33
|
||||
36 <--x 31
|
||||
36 <--x 33
|
||||
27 --- 43
|
||||
27 --- 44
|
||||
27 x--> 37
|
||||
28 --- 34
|
||||
28 --- 41
|
||||
28 --- 42
|
||||
28 x--> 37
|
||||
29 --- 33
|
||||
29 --- 39
|
||||
29 --- 40
|
||||
29 x--> 37
|
||||
32 --- 33
|
||||
32 --- 34
|
||||
32 --- 35
|
||||
32 --- 36
|
||||
32 --- 37
|
||||
32 --- 38
|
||||
32 --- 39
|
||||
32 --- 40
|
||||
32 --- 41
|
||||
32 --- 42
|
||||
32 --- 43
|
||||
32 --- 44
|
||||
32 --- 45
|
||||
32 --- 46
|
||||
39 <--x 33
|
||||
39 <--x 38
|
||||
40 <--x 33
|
||||
40 <--x 36
|
||||
41 <--x 34
|
||||
41 <--x 38
|
||||
42 <--x 33
|
||||
42 <--x 34
|
||||
43 <--x 35
|
||||
43 <--x 38
|
||||
44 <--x 34
|
||||
44 <--x 35
|
||||
45 <--x 36
|
||||
45 <--x 38
|
||||
46 <--x 35
|
||||
46 <--x 36
|
||||
```
|
||||
|
@ -207,6 +207,15 @@ description: Artifact commands basic_fillet_cube_close_opposite.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -217,6 +226,15 @@ description: Artifact commands basic_fillet_cube_close_opposite.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -249,19 +267,19 @@ description: Artifact commands basic_fillet_cube_close_opposite.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -296,19 +314,19 @@ description: Artifact commands basic_fillet_cube_close_opposite.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -339,15 +357,6 @@ description: Artifact commands basic_fillet_cube_close_opposite.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -358,6 +367,15 @@ description: Artifact commands basic_fillet_cube_close_opposite.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -377,24 +395,6 @@ description: Artifact commands basic_fillet_cube_close_opposite.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -17,11 +17,15 @@ flowchart LR
|
||||
13["Cap Start"]
|
||||
14["Cap End"]
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
16["SweepEdge Adjacent"]
|
||||
17["SweepEdge Opposite"]
|
||||
18["SweepEdge Opposite"]
|
||||
19["EdgeCut Fillet<br>[223, 283, 0]"]
|
||||
20["EdgeCut Fillet<br>[223, 283, 0]"]
|
||||
18["SweepEdge Adjacent"]
|
||||
19["SweepEdge Opposite"]
|
||||
20["SweepEdge Adjacent"]
|
||||
21["SweepEdge Opposite"]
|
||||
22["SweepEdge Adjacent"]
|
||||
23["EdgeCut Fillet<br>[223, 283, 0]"]
|
||||
24["EdgeCut Fillet<br>[223, 283, 0]"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -30,17 +34,21 @@ flowchart LR
|
||||
2 ---- 8
|
||||
2 --- 7
|
||||
3 --- 12
|
||||
3 --- 17
|
||||
3 --- 21
|
||||
3 --- 22
|
||||
3 x--> 13
|
||||
4 --- 11
|
||||
4 --- 16
|
||||
4 --- 19
|
||||
4 --- 20
|
||||
4 x--> 13
|
||||
5 --- 10
|
||||
5 --- 15
|
||||
5 --- 17
|
||||
5 --- 18
|
||||
5 x--> 13
|
||||
6 --- 9
|
||||
6 --- 18
|
||||
6 --- 19
|
||||
6 --- 15
|
||||
6 --- 16
|
||||
6 --- 23
|
||||
6 x--> 13
|
||||
8 --- 9
|
||||
8 --- 10
|
||||
@ -52,11 +60,23 @@ flowchart LR
|
||||
8 --- 16
|
||||
8 --- 17
|
||||
8 --- 18
|
||||
15 <--x 10
|
||||
15 <--x 14
|
||||
16 <--x 11
|
||||
16 <--x 14
|
||||
17 <--x 12
|
||||
8 --- 19
|
||||
8 --- 20
|
||||
8 --- 21
|
||||
8 --- 22
|
||||
16 <--x 9
|
||||
16 <--x 12
|
||||
17 <--x 10
|
||||
17 <--x 14
|
||||
18 <--x 20
|
||||
18 <--x 9
|
||||
18 <--x 10
|
||||
19 <--x 11
|
||||
19 <--x 14
|
||||
20 <--x 10
|
||||
20 <--x 11
|
||||
21 <--x 12
|
||||
21 <--x 14
|
||||
22 <--x 11
|
||||
22 <--x 12
|
||||
15 <--x 24
|
||||
```
|
||||
|
@ -207,6 +207,15 @@ description: Artifact commands basic_fillet_cube_end.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -217,6 +226,15 @@ description: Artifact commands basic_fillet_cube_end.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -249,19 +267,19 @@ description: Artifact commands basic_fillet_cube_end.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -296,19 +314,19 @@ description: Artifact commands basic_fillet_cube_end.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -339,15 +357,6 @@ description: Artifact commands basic_fillet_cube_end.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -358,6 +367,15 @@ description: Artifact commands basic_fillet_cube_end.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -377,24 +395,6 @@ description: Artifact commands basic_fillet_cube_end.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -17,10 +17,15 @@ flowchart LR
|
||||
13["Cap Start"]
|
||||
14["Cap End"]
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
16["SweepEdge Adjacent"]
|
||||
17["SweepEdge Opposite"]
|
||||
18["EdgeCut Fillet<br>[211, 269, 0]"]
|
||||
19["EdgeCut Fillet<br>[211, 269, 0]"]
|
||||
18["SweepEdge Adjacent"]
|
||||
19["SweepEdge Opposite"]
|
||||
20["SweepEdge Adjacent"]
|
||||
21["SweepEdge Opposite"]
|
||||
22["SweepEdge Adjacent"]
|
||||
23["EdgeCut Fillet<br>[211, 269, 0]"]
|
||||
24["EdgeCut Fillet<br>[211, 269, 0]"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -29,16 +34,21 @@ flowchart LR
|
||||
2 ---- 8
|
||||
2 --- 7
|
||||
3 --- 12
|
||||
3 --- 17
|
||||
3 --- 18
|
||||
3 --- 21
|
||||
3 --- 22
|
||||
3 --- 23
|
||||
3 x--> 13
|
||||
4 --- 11
|
||||
4 --- 16
|
||||
4 --- 19
|
||||
4 --- 20
|
||||
4 x--> 13
|
||||
5 --- 10
|
||||
5 --- 15
|
||||
5 --- 17
|
||||
5 --- 18
|
||||
5 x--> 13
|
||||
6 --- 9
|
||||
6 --- 15
|
||||
6 --- 16
|
||||
6 x--> 13
|
||||
8 --- 9
|
||||
8 --- 10
|
||||
@ -49,9 +59,24 @@ flowchart LR
|
||||
8 --- 15
|
||||
8 --- 16
|
||||
8 --- 17
|
||||
15 <--x 10
|
||||
8 --- 18
|
||||
8 --- 19
|
||||
8 --- 20
|
||||
8 --- 21
|
||||
8 --- 22
|
||||
15 <--x 9
|
||||
15 <--x 14
|
||||
16 <--x 11
|
||||
16 <--x 14
|
||||
17 <--x 19
|
||||
16 <--x 9
|
||||
16 <--x 12
|
||||
17 <--x 10
|
||||
17 <--x 14
|
||||
18 <--x 9
|
||||
18 <--x 10
|
||||
19 <--x 11
|
||||
19 <--x 14
|
||||
20 <--x 10
|
||||
20 <--x 11
|
||||
22 <--x 11
|
||||
22 <--x 12
|
||||
21 <--x 24
|
||||
```
|
||||
|
@ -207,6 +207,15 @@ description: Artifact commands basic_fillet_cube_next_adjacent.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -217,6 +226,15 @@ description: Artifact commands basic_fillet_cube_next_adjacent.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -249,19 +267,19 @@ description: Artifact commands basic_fillet_cube_next_adjacent.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -296,19 +314,19 @@ description: Artifact commands basic_fillet_cube_next_adjacent.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -339,15 +357,6 @@ description: Artifact commands basic_fillet_cube_next_adjacent.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -358,6 +367,15 @@ description: Artifact commands basic_fillet_cube_next_adjacent.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -377,24 +395,6 @@ description: Artifact commands basic_fillet_cube_next_adjacent.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -17,9 +17,14 @@ flowchart LR
|
||||
13["Cap Start"]
|
||||
14["Cap End"]
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
16["SweepEdge Adjacent"]
|
||||
17["SweepEdge Opposite"]
|
||||
18["SweepEdge Adjacent"]
|
||||
19["SweepEdge Opposite"]
|
||||
20["SweepEdge Adjacent"]
|
||||
21["SweepEdge Opposite"]
|
||||
22["SweepEdge Adjacent"]
|
||||
23["EdgeCut Fillet<br>[238, 294, 0]"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -28,16 +33,20 @@ flowchart LR
|
||||
2 ---- 8
|
||||
2 --- 7
|
||||
3 --- 12
|
||||
3 --- 17
|
||||
3 --- 21
|
||||
3 --- 22
|
||||
3 x--> 13
|
||||
4 --- 11
|
||||
4 --- 16
|
||||
4 --- 19
|
||||
4 --- 20
|
||||
4 x--> 13
|
||||
5 --- 10
|
||||
5 --- 15
|
||||
5 --- 17
|
||||
5 --- 18
|
||||
5 x--> 13
|
||||
6 --- 9
|
||||
6 --- 18
|
||||
6 --- 15
|
||||
6 --- 16
|
||||
6 x--> 13
|
||||
8 --- 9
|
||||
8 --- 10
|
||||
@ -49,10 +58,23 @@ flowchart LR
|
||||
8 --- 16
|
||||
8 --- 17
|
||||
8 --- 18
|
||||
15 <--x 10
|
||||
8 --- 19
|
||||
8 --- 20
|
||||
8 --- 21
|
||||
8 --- 22
|
||||
15 <--x 9
|
||||
15 <--x 14
|
||||
16 <--x 11
|
||||
16 <--x 14
|
||||
17 <--x 12
|
||||
17 <--x 10
|
||||
17 <--x 14
|
||||
18 <--x 9
|
||||
18 <--x 10
|
||||
19 <--x 11
|
||||
19 <--x 14
|
||||
20 <--x 10
|
||||
20 <--x 11
|
||||
21 <--x 12
|
||||
21 <--x 14
|
||||
22 <--x 11
|
||||
22 <--x 12
|
||||
16 <--x 23
|
||||
```
|
||||
|
@ -207,6 +207,15 @@ description: Artifact commands basic_fillet_cube_previous_adjacent.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -217,6 +226,15 @@ description: Artifact commands basic_fillet_cube_previous_adjacent.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -249,19 +267,19 @@ description: Artifact commands basic_fillet_cube_previous_adjacent.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -296,19 +314,19 @@ description: Artifact commands basic_fillet_cube_previous_adjacent.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -339,15 +357,6 @@ description: Artifact commands basic_fillet_cube_previous_adjacent.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -358,6 +367,15 @@ description: Artifact commands basic_fillet_cube_previous_adjacent.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -377,24 +395,6 @@ description: Artifact commands basic_fillet_cube_previous_adjacent.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -17,8 +17,14 @@ flowchart LR
|
||||
13["Cap Start"]
|
||||
14["Cap End"]
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
16["SweepEdge Adjacent"]
|
||||
17["SweepEdge Opposite"]
|
||||
18["SweepEdge Adjacent"]
|
||||
19["SweepEdge Opposite"]
|
||||
20["SweepEdge Adjacent"]
|
||||
21["SweepEdge Opposite"]
|
||||
22["SweepEdge Adjacent"]
|
||||
23["EdgeCut Fillet<br>[238, 298, 0]"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -27,15 +33,20 @@ flowchart LR
|
||||
2 ---- 8
|
||||
2 --- 7
|
||||
3 --- 12
|
||||
3 --- 17
|
||||
3 --- 21
|
||||
3 --- 22
|
||||
3 x--> 13
|
||||
4 --- 11
|
||||
4 --- 16
|
||||
4 --- 19
|
||||
4 --- 20
|
||||
4 x--> 13
|
||||
5 --- 10
|
||||
5 --- 15
|
||||
5 --- 17
|
||||
5 --- 18
|
||||
5 x--> 13
|
||||
6 --- 9
|
||||
6 --- 15
|
||||
6 --- 16
|
||||
6 x--> 13
|
||||
8 --- 9
|
||||
8 --- 10
|
||||
@ -46,10 +57,26 @@ flowchart LR
|
||||
8 --- 15
|
||||
8 --- 16
|
||||
8 --- 17
|
||||
15 <--x 10
|
||||
8 --- 18
|
||||
8 --- 19
|
||||
8 --- 20
|
||||
8 --- 21
|
||||
8 --- 22
|
||||
15 <--x 9
|
||||
15 <--x 14
|
||||
16 <--x 11
|
||||
16 <--x 14
|
||||
17 <--x 12
|
||||
16 <--x 9
|
||||
16 <--x 12
|
||||
17 <--x 10
|
||||
17 <--x 14
|
||||
18 <--x 9
|
||||
18 <--x 10
|
||||
19 <--x 11
|
||||
19 <--x 14
|
||||
20 <--x 10
|
||||
20 <--x 11
|
||||
21 <--x 12
|
||||
21 <--x 14
|
||||
22 <--x 11
|
||||
22 <--x 12
|
||||
18 <--x 23
|
||||
```
|
||||
|
@ -207,6 +207,15 @@ description: Artifact commands basic_fillet_cube_start.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -217,6 +226,15 @@ description: Artifact commands basic_fillet_cube_start.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -249,19 +267,19 @@ description: Artifact commands basic_fillet_cube_start.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -296,19 +314,19 @@ description: Artifact commands basic_fillet_cube_start.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -339,15 +357,6 @@ description: Artifact commands basic_fillet_cube_start.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -358,6 +367,15 @@ description: Artifact commands basic_fillet_cube_start.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -377,24 +395,6 @@ description: Artifact commands basic_fillet_cube_start.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -17,10 +17,15 @@ flowchart LR
|
||||
13["Cap Start"]
|
||||
14["Cap End"]
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
16["SweepEdge Adjacent"]
|
||||
17["SweepEdge Opposite"]
|
||||
18["EdgeCut Fillet<br>[211, 253, 0]"]
|
||||
19["EdgeCut Fillet<br>[211, 253, 0]"]
|
||||
18["SweepEdge Adjacent"]
|
||||
19["SweepEdge Opposite"]
|
||||
20["SweepEdge Adjacent"]
|
||||
21["SweepEdge Opposite"]
|
||||
22["SweepEdge Adjacent"]
|
||||
23["EdgeCut Fillet<br>[211, 253, 0]"]
|
||||
24["EdgeCut Fillet<br>[211, 253, 0]"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -29,17 +34,22 @@ flowchart LR
|
||||
2 ---- 8
|
||||
2 --- 7
|
||||
3 --- 12
|
||||
3 --- 17
|
||||
3 --- 18
|
||||
3 --- 21
|
||||
3 --- 22
|
||||
3 --- 23
|
||||
3 x--> 13
|
||||
4 --- 11
|
||||
4 --- 16
|
||||
4 --- 19
|
||||
4 --- 20
|
||||
4 x--> 13
|
||||
5 --- 10
|
||||
5 --- 15
|
||||
5 --- 19
|
||||
5 --- 17
|
||||
5 --- 18
|
||||
5 --- 24
|
||||
5 x--> 13
|
||||
6 --- 9
|
||||
6 --- 15
|
||||
6 --- 16
|
||||
6 x--> 13
|
||||
8 --- 9
|
||||
8 --- 10
|
||||
@ -50,10 +60,25 @@ flowchart LR
|
||||
8 --- 15
|
||||
8 --- 16
|
||||
8 --- 17
|
||||
15 <--x 10
|
||||
8 --- 18
|
||||
8 --- 19
|
||||
8 --- 20
|
||||
8 --- 21
|
||||
8 --- 22
|
||||
15 <--x 9
|
||||
15 <--x 14
|
||||
16 <--x 11
|
||||
16 <--x 14
|
||||
17 <--x 12
|
||||
16 <--x 9
|
||||
16 <--x 12
|
||||
17 <--x 10
|
||||
17 <--x 14
|
||||
18 <--x 9
|
||||
18 <--x 10
|
||||
19 <--x 11
|
||||
19 <--x 14
|
||||
20 <--x 10
|
||||
20 <--x 11
|
||||
21 <--x 12
|
||||
21 <--x 14
|
||||
22 <--x 11
|
||||
22 <--x 12
|
||||
```
|
||||
|
@ -181,6 +181,15 @@ description: Artifact commands circle_three_point.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -191,6 +200,15 @@ description: Artifact commands circle_three_point.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -201,24 +219,6 @@ description: Artifact commands circle_three_point.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -10,13 +10,22 @@ flowchart LR
|
||||
6[Wall]
|
||||
7["Cap Start"]
|
||||
8["Cap End"]
|
||||
9["SweepEdge Opposite"]
|
||||
10["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 ---- 5
|
||||
2 --- 4
|
||||
3 --- 6
|
||||
3 --- 9
|
||||
3 --- 10
|
||||
3 x--> 7
|
||||
5 --- 6
|
||||
5 --- 7
|
||||
5 --- 8
|
||||
5 --- 9
|
||||
5 --- 10
|
||||
9 <--x 6
|
||||
9 <--x 8
|
||||
10 <--x 6
|
||||
```
|
||||
|
@ -207,6 +207,15 @@ description: Artifact commands circular_pattern3d_a_pattern.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -217,6 +226,15 @@ description: Artifact commands circular_pattern3d_a_pattern.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -249,19 +267,19 @@ description: Artifact commands circular_pattern3d_a_pattern.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -296,19 +314,19 @@ description: Artifact commands circular_pattern3d_a_pattern.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -339,15 +357,6 @@ description: Artifact commands circular_pattern3d_a_pattern.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -358,6 +367,15 @@ description: Artifact commands circular_pattern3d_a_pattern.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -377,24 +395,6 @@ description: Artifact commands circular_pattern3d_a_pattern.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -17,8 +17,13 @@ flowchart LR
|
||||
13["Cap Start"]
|
||||
14["Cap End"]
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
16["SweepEdge Adjacent"]
|
||||
17["SweepEdge Opposite"]
|
||||
18["SweepEdge Adjacent"]
|
||||
19["SweepEdge Opposite"]
|
||||
20["SweepEdge Adjacent"]
|
||||
21["SweepEdge Opposite"]
|
||||
22["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -27,15 +32,20 @@ flowchart LR
|
||||
2 ---- 8
|
||||
2 --- 7
|
||||
3 --- 12
|
||||
3 --- 17
|
||||
3 --- 21
|
||||
3 --- 22
|
||||
3 x--> 13
|
||||
4 --- 11
|
||||
4 --- 16
|
||||
4 --- 19
|
||||
4 --- 20
|
||||
4 x--> 13
|
||||
5 --- 10
|
||||
5 --- 15
|
||||
5 --- 17
|
||||
5 --- 18
|
||||
5 x--> 13
|
||||
6 --- 9
|
||||
6 --- 15
|
||||
6 --- 16
|
||||
6 x--> 13
|
||||
8 --- 9
|
||||
8 --- 10
|
||||
@ -46,10 +56,25 @@ flowchart LR
|
||||
8 --- 15
|
||||
8 --- 16
|
||||
8 --- 17
|
||||
15 <--x 10
|
||||
8 --- 18
|
||||
8 --- 19
|
||||
8 --- 20
|
||||
8 --- 21
|
||||
8 --- 22
|
||||
15 <--x 9
|
||||
15 <--x 14
|
||||
16 <--x 11
|
||||
16 <--x 14
|
||||
17 <--x 12
|
||||
16 <--x 9
|
||||
16 <--x 12
|
||||
17 <--x 10
|
||||
17 <--x 14
|
||||
18 <--x 9
|
||||
18 <--x 10
|
||||
19 <--x 11
|
||||
19 <--x 14
|
||||
20 <--x 10
|
||||
20 <--x 11
|
||||
21 <--x 12
|
||||
21 <--x 14
|
||||
22 <--x 11
|
||||
22 <--x 12
|
||||
```
|
||||
|
@ -207,6 +207,15 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -217,6 +226,15 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -249,19 +267,19 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -292,15 +310,6 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -311,6 +320,15 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -330,24 +348,6 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -846,6 +846,15 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -856,6 +865,15 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -888,19 +906,19 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -931,15 +949,6 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -950,6 +959,15 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -969,24 +987,6 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1034,6 +1034,15 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1044,6 +1053,15 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1076,19 +1094,19 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1119,15 +1137,6 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1138,6 +1147,15 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1157,24 +1175,6 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1727,6 +1727,15 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1737,6 +1746,15 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1769,19 +1787,19 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1816,19 +1834,19 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1859,15 +1877,6 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1878,6 +1887,15 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1897,24 +1915,6 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1947,6 +1947,15 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1957,6 +1966,15 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1989,19 +2007,19 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -2032,15 +2050,6 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -2051,6 +2060,15 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -2061,24 +2079,6 @@ description: Artifact commands crazy_multi_profile.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -8,76 +8,76 @@ flowchart LR
|
||||
6["Segment<br>[243, 250, 0]"]
|
||||
7[Solid2d]
|
||||
end
|
||||
subgraph path16 [Path]
|
||||
16["Path<br>[362, 405, 0]"]
|
||||
17["Segment<br>[411, 435, 0]"]
|
||||
18["Segment<br>[441, 466, 0]"]
|
||||
subgraph path20 [Path]
|
||||
20["Path<br>[362, 405, 0]"]
|
||||
21["Segment<br>[411, 435, 0]"]
|
||||
22["Segment<br>[441, 466, 0]"]
|
||||
end
|
||||
subgraph path19 [Path]
|
||||
19["Path<br>[480, 522, 0]"]
|
||||
20["Segment<br>[528, 593, 0]"]
|
||||
21["Segment<br>[599, 667, 0]"]
|
||||
22["Segment<br>[673, 761, 0]"]
|
||||
23["Segment<br>[767, 823, 0]"]
|
||||
24["Segment<br>[829, 836, 0]"]
|
||||
25[Solid2d]
|
||||
subgraph path23 [Path]
|
||||
23["Path<br>[480, 522, 0]"]
|
||||
24["Segment<br>[528, 593, 0]"]
|
||||
25["Segment<br>[599, 667, 0]"]
|
||||
26["Segment<br>[673, 761, 0]"]
|
||||
27["Segment<br>[767, 823, 0]"]
|
||||
28["Segment<br>[829, 836, 0]"]
|
||||
29[Solid2d]
|
||||
end
|
||||
subgraph path26 [Path]
|
||||
26["Path<br>[850, 892, 0]"]
|
||||
27["Segment<br>[898, 918, 0]"]
|
||||
28["Segment<br>[924, 950, 0]"]
|
||||
29["Segment<br>[956, 1012, 0]"]
|
||||
30["Segment<br>[1018, 1025, 0]"]
|
||||
31[Solid2d]
|
||||
subgraph path30 [Path]
|
||||
30["Path<br>[850, 892, 0]"]
|
||||
31["Segment<br>[898, 918, 0]"]
|
||||
32["Segment<br>[924, 950, 0]"]
|
||||
33["Segment<br>[956, 1012, 0]"]
|
||||
34["Segment<br>[1018, 1025, 0]"]
|
||||
35[Solid2d]
|
||||
end
|
||||
subgraph path32 [Path]
|
||||
32["Path<br>[1039, 1094, 0]"]
|
||||
33["Segment<br>[1039, 1094, 0]"]
|
||||
34[Solid2d]
|
||||
subgraph path36 [Path]
|
||||
36["Path<br>[1039, 1094, 0]"]
|
||||
37["Segment<br>[1039, 1094, 0]"]
|
||||
38[Solid2d]
|
||||
end
|
||||
subgraph path35 [Path]
|
||||
35["Path<br>[1108, 1150, 0]"]
|
||||
36["Segment<br>[1156, 1180, 0]"]
|
||||
37["Segment<br>[1186, 1211, 0]"]
|
||||
38["Segment<br>[1217, 1273, 0]"]
|
||||
39["Segment<br>[1279, 1286, 0]"]
|
||||
40[Solid2d]
|
||||
subgraph path39 [Path]
|
||||
39["Path<br>[1108, 1150, 0]"]
|
||||
40["Segment<br>[1156, 1180, 0]"]
|
||||
41["Segment<br>[1186, 1211, 0]"]
|
||||
42["Segment<br>[1217, 1273, 0]"]
|
||||
43["Segment<br>[1279, 1286, 0]"]
|
||||
44[Solid2d]
|
||||
end
|
||||
subgraph path52 [Path]
|
||||
52["Path<br>[1456, 1497, 0]"]
|
||||
53["Segment<br>[1503, 1527, 0]"]
|
||||
54["Segment<br>[1533, 1558, 0]"]
|
||||
subgraph path59 [Path]
|
||||
59["Path<br>[1456, 1497, 0]"]
|
||||
60["Segment<br>[1503, 1527, 0]"]
|
||||
61["Segment<br>[1533, 1558, 0]"]
|
||||
end
|
||||
subgraph path55 [Path]
|
||||
55["Path<br>[1572, 1614, 0]"]
|
||||
56["Segment<br>[1620, 1644, 0]"]
|
||||
57["Segment<br>[1650, 1675, 0]"]
|
||||
58["Segment<br>[1681, 1737, 0]"]
|
||||
59["Segment<br>[1743, 1750, 0]"]
|
||||
60[Solid2d]
|
||||
subgraph path62 [Path]
|
||||
62["Path<br>[1572, 1614, 0]"]
|
||||
63["Segment<br>[1620, 1644, 0]"]
|
||||
64["Segment<br>[1650, 1675, 0]"]
|
||||
65["Segment<br>[1681, 1737, 0]"]
|
||||
66["Segment<br>[1743, 1750, 0]"]
|
||||
67[Solid2d]
|
||||
end
|
||||
subgraph path61 [Path]
|
||||
61["Path<br>[1764, 1806, 0]"]
|
||||
62["Segment<br>[1812, 1835, 0]"]
|
||||
63["Segment<br>[1841, 1866, 0]"]
|
||||
64["Segment<br>[1872, 1928, 0]"]
|
||||
65["Segment<br>[1934, 1941, 0]"]
|
||||
66[Solid2d]
|
||||
subgraph path68 [Path]
|
||||
68["Path<br>[1764, 1806, 0]"]
|
||||
69["Segment<br>[1812, 1835, 0]"]
|
||||
70["Segment<br>[1841, 1866, 0]"]
|
||||
71["Segment<br>[1872, 1928, 0]"]
|
||||
72["Segment<br>[1934, 1941, 0]"]
|
||||
73[Solid2d]
|
||||
end
|
||||
subgraph path67 [Path]
|
||||
67["Path<br>[1955, 2011, 0]"]
|
||||
68["Segment<br>[1955, 2011, 0]"]
|
||||
69[Solid2d]
|
||||
end
|
||||
subgraph path70 [Path]
|
||||
70["Path<br>[2025, 2068, 0]"]
|
||||
71["Segment<br>[2074, 2139, 0]"]
|
||||
72["Segment<br>[2145, 2213, 0]"]
|
||||
73["Segment<br>[2219, 2307, 0]"]
|
||||
74["Segment<br>[2313, 2369, 0]"]
|
||||
75["Segment<br>[2375, 2382, 0]"]
|
||||
subgraph path74 [Path]
|
||||
74["Path<br>[1955, 2011, 0]"]
|
||||
75["Segment<br>[1955, 2011, 0]"]
|
||||
76[Solid2d]
|
||||
end
|
||||
subgraph path77 [Path]
|
||||
77["Path<br>[2025, 2068, 0]"]
|
||||
78["Segment<br>[2074, 2139, 0]"]
|
||||
79["Segment<br>[2145, 2213, 0]"]
|
||||
80["Segment<br>[2219, 2307, 0]"]
|
||||
81["Segment<br>[2313, 2369, 0]"]
|
||||
82["Segment<br>[2375, 2382, 0]"]
|
||||
83[Solid2d]
|
||||
end
|
||||
1["Plane<br>[12, 29, 0]"]
|
||||
8["Sweep Extrusion<br>[264, 296, 0]"]
|
||||
9[Wall]
|
||||
@ -86,37 +86,53 @@ flowchart LR
|
||||
12["Cap Start"]
|
||||
13["Cap End"]
|
||||
14["SweepEdge Opposite"]
|
||||
15["SweepEdge Opposite"]
|
||||
41["SweepEdge Adjacent"]
|
||||
42["Sweep RevolveAboutEdge<br>[1300, 1366, 0]"]
|
||||
43["Sweep Extrusion<br>[1380, 1411, 0]"]
|
||||
44[Wall]
|
||||
45[Wall]
|
||||
46[Wall]
|
||||
47["Cap Start"]
|
||||
48["Cap End"]
|
||||
49["SweepEdge Opposite"]
|
||||
50["SweepEdge Opposite"]
|
||||
51["Plane<br>[1424, 1442, 0]"]
|
||||
77["Sweep Extrusion<br>[2396, 2429, 0]"]
|
||||
78[Wall]
|
||||
79[Wall]
|
||||
80[Wall]
|
||||
81[Wall]
|
||||
82["Cap Start"]
|
||||
83["Cap End"]
|
||||
84["SweepEdge Opposite"]
|
||||
85["SweepEdge Opposite"]
|
||||
86["SweepEdge Opposite"]
|
||||
87["Sweep RevolveAboutEdge<br>[2443, 2488, 0]"]
|
||||
15["SweepEdge Adjacent"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Adjacent"]
|
||||
18["SweepEdge Opposite"]
|
||||
19["SweepEdge Adjacent"]
|
||||
45["Sweep RevolveAboutEdge<br>[1300, 1366, 0]"]
|
||||
46["Sweep Extrusion<br>[1380, 1411, 0]"]
|
||||
47[Wall]
|
||||
48[Wall]
|
||||
49[Wall]
|
||||
50["Cap Start"]
|
||||
51["Cap End"]
|
||||
52["SweepEdge Opposite"]
|
||||
53["SweepEdge Adjacent"]
|
||||
54["SweepEdge Opposite"]
|
||||
55["SweepEdge Adjacent"]
|
||||
56["SweepEdge Opposite"]
|
||||
57["SweepEdge Adjacent"]
|
||||
58["Plane<br>[1424, 1442, 0]"]
|
||||
84["Sweep Extrusion<br>[2396, 2429, 0]"]
|
||||
85[Wall]
|
||||
86[Wall]
|
||||
87[Wall]
|
||||
88[Wall]
|
||||
89[Wall]
|
||||
90[Wall]
|
||||
91["Cap Start"]
|
||||
92["Cap End"]
|
||||
89["Cap Start"]
|
||||
90["Cap End"]
|
||||
91["SweepEdge Opposite"]
|
||||
92["SweepEdge Adjacent"]
|
||||
93["SweepEdge Opposite"]
|
||||
94["SweepEdge Opposite"]
|
||||
95["StartSketchOnFace<br>[309, 348, 0]"]
|
||||
94["SweepEdge Adjacent"]
|
||||
95["SweepEdge Opposite"]
|
||||
96["SweepEdge Adjacent"]
|
||||
97["SweepEdge Opposite"]
|
||||
98["SweepEdge Adjacent"]
|
||||
99["Sweep RevolveAboutEdge<br>[2443, 2488, 0]"]
|
||||
100[Wall]
|
||||
101[Wall]
|
||||
102[Wall]
|
||||
103["Cap Start"]
|
||||
104["Cap End"]
|
||||
105["SweepEdge Opposite"]
|
||||
106["SweepEdge Adjacent"]
|
||||
107["SweepEdge Opposite"]
|
||||
108["SweepEdge Adjacent"]
|
||||
109["SweepEdge Opposite"]
|
||||
110["SweepEdge Adjacent"]
|
||||
111["StartSketchOnFace<br>[309, 348, 0]"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -125,13 +141,16 @@ flowchart LR
|
||||
2 ---- 8
|
||||
2 --- 7
|
||||
3 --- 11
|
||||
3 --- 15
|
||||
3 --- 18
|
||||
3 --- 19
|
||||
3 x--> 12
|
||||
4 --- 10
|
||||
4 --- 14
|
||||
4 --- 41
|
||||
4 --- 16
|
||||
4 --- 17
|
||||
4 x--> 12
|
||||
5 --- 9
|
||||
5 --- 14
|
||||
5 --- 15
|
||||
5 x--> 12
|
||||
8 --- 9
|
||||
8 --- 10
|
||||
@ -140,130 +159,191 @@ flowchart LR
|
||||
8 --- 13
|
||||
8 --- 14
|
||||
8 --- 15
|
||||
8 --- 41
|
||||
10 --- 16
|
||||
10 --- 19
|
||||
10 --- 26
|
||||
10 --- 32
|
||||
10 --- 35
|
||||
14 <--x 10
|
||||
8 --- 16
|
||||
8 --- 17
|
||||
8 --- 18
|
||||
8 --- 19
|
||||
10 --- 20
|
||||
10 --- 23
|
||||
10 --- 30
|
||||
10 --- 36
|
||||
10 --- 39
|
||||
14 <--x 9
|
||||
14 <--x 13
|
||||
15 <--x 9
|
||||
15 <--x 11
|
||||
15 <--x 13
|
||||
16 --- 17
|
||||
16 --- 18
|
||||
19 --- 20
|
||||
19 --- 21
|
||||
19 --- 22
|
||||
19 --- 23
|
||||
19 --- 24
|
||||
19 --- 25
|
||||
26 --- 27
|
||||
26 --- 28
|
||||
26 --- 29
|
||||
26 --- 30
|
||||
26 ---- 42
|
||||
26 --- 31
|
||||
32 --- 33
|
||||
32 --- 34
|
||||
35 --- 36
|
||||
35 --- 37
|
||||
35 --- 38
|
||||
35 --- 39
|
||||
35 ---- 43
|
||||
35 --- 40
|
||||
36 --- 46
|
||||
36 --- 50
|
||||
36 x--> 47
|
||||
37 --- 45
|
||||
37 --- 49
|
||||
37 x--> 47
|
||||
38 --- 44
|
||||
38 x--> 47
|
||||
41 <--x 9
|
||||
41 <--x 10
|
||||
43 --- 44
|
||||
43 --- 45
|
||||
43 --- 46
|
||||
43 --- 47
|
||||
43 --- 48
|
||||
43 --- 49
|
||||
43 --- 50
|
||||
49 <--x 45
|
||||
49 <--x 48
|
||||
50 <--x 46
|
||||
50 <--x 48
|
||||
51 --- 52
|
||||
51 --- 55
|
||||
51 --- 61
|
||||
51 --- 67
|
||||
51 --- 70
|
||||
52 --- 53
|
||||
52 --- 54
|
||||
55 --- 56
|
||||
55 --- 57
|
||||
55 --- 58
|
||||
55 --- 59
|
||||
55 ---- 87
|
||||
55 --- 60
|
||||
56 --- 88
|
||||
56 x--> 91
|
||||
57 --- 89
|
||||
57 --- 93
|
||||
57 x--> 91
|
||||
58 --- 90
|
||||
58 --- 94
|
||||
58 x--> 91
|
||||
61 --- 62
|
||||
61 --- 63
|
||||
61 --- 64
|
||||
61 --- 65
|
||||
61 --- 66
|
||||
67 --- 68
|
||||
67 --- 69
|
||||
70 --- 71
|
||||
70 --- 72
|
||||
70 --- 73
|
||||
70 --- 74
|
||||
70 --- 75
|
||||
70 ---- 77
|
||||
70 --- 76
|
||||
71 --- 81
|
||||
71 --- 86
|
||||
71 x--> 82
|
||||
72 --- 80
|
||||
72 --- 85
|
||||
72 x--> 82
|
||||
73 --- 79
|
||||
73 --- 84
|
||||
73 x--> 82
|
||||
74 --- 78
|
||||
74 x--> 82
|
||||
16 <--x 10
|
||||
16 <--x 13
|
||||
17 <--x 9
|
||||
17 <--x 10
|
||||
18 <--x 11
|
||||
18 <--x 13
|
||||
19 <--x 10
|
||||
19 <--x 11
|
||||
20 --- 21
|
||||
20 --- 22
|
||||
23 --- 24
|
||||
23 --- 25
|
||||
23 --- 26
|
||||
23 --- 27
|
||||
23 --- 28
|
||||
23 --- 29
|
||||
30 --- 31
|
||||
30 --- 32
|
||||
30 --- 33
|
||||
30 --- 34
|
||||
30 ---- 45
|
||||
30 --- 35
|
||||
36 --- 37
|
||||
36 --- 38
|
||||
39 --- 40
|
||||
39 --- 41
|
||||
39 --- 42
|
||||
39 --- 43
|
||||
39 ---- 46
|
||||
39 --- 44
|
||||
40 --- 49
|
||||
40 --- 56
|
||||
40 --- 57
|
||||
40 x--> 50
|
||||
41 --- 48
|
||||
41 --- 54
|
||||
41 --- 55
|
||||
41 x--> 50
|
||||
42 --- 47
|
||||
42 --- 52
|
||||
42 --- 53
|
||||
42 x--> 50
|
||||
46 --- 47
|
||||
46 --- 48
|
||||
46 --- 49
|
||||
46 --- 50
|
||||
46 --- 51
|
||||
46 --- 52
|
||||
46 --- 53
|
||||
46 --- 54
|
||||
46 --- 55
|
||||
46 --- 56
|
||||
46 --- 57
|
||||
52 <--x 47
|
||||
52 <--x 51
|
||||
53 <--x 47
|
||||
53 <--x 49
|
||||
54 <--x 48
|
||||
54 <--x 51
|
||||
55 <--x 47
|
||||
55 <--x 48
|
||||
56 <--x 49
|
||||
56 <--x 51
|
||||
57 <--x 48
|
||||
57 <--x 49
|
||||
58 --- 59
|
||||
58 --- 62
|
||||
58 --- 68
|
||||
58 --- 74
|
||||
58 --- 77
|
||||
59 --- 60
|
||||
59 --- 61
|
||||
62 --- 63
|
||||
62 --- 64
|
||||
62 --- 65
|
||||
62 --- 66
|
||||
62 ---- 99
|
||||
62 --- 67
|
||||
63 --- 100
|
||||
63 --- 105
|
||||
63 --- 106
|
||||
63 x--> 103
|
||||
64 --- 101
|
||||
64 --- 107
|
||||
64 --- 108
|
||||
64 x--> 103
|
||||
65 --- 102
|
||||
65 --- 109
|
||||
65 --- 110
|
||||
65 x--> 103
|
||||
68 --- 69
|
||||
68 --- 70
|
||||
68 --- 71
|
||||
68 --- 72
|
||||
68 --- 73
|
||||
74 --- 75
|
||||
74 --- 76
|
||||
77 --- 78
|
||||
77 --- 79
|
||||
77 --- 80
|
||||
77 --- 81
|
||||
77 --- 82
|
||||
77 ---- 84
|
||||
77 --- 83
|
||||
77 --- 84
|
||||
77 --- 85
|
||||
77 --- 86
|
||||
84 <--x 79
|
||||
84 <--x 83
|
||||
85 <--x 80
|
||||
85 <--x 83
|
||||
86 <--x 81
|
||||
86 <--x 83
|
||||
87 --- 88
|
||||
87 --- 89
|
||||
87 --- 90
|
||||
87 --- 91
|
||||
87 --- 92
|
||||
87 --- 93
|
||||
87 --- 94
|
||||
93 <--x 89
|
||||
93 <--x 92
|
||||
94 <--x 90
|
||||
94 <--x 92
|
||||
10 <--x 95
|
||||
78 --- 88
|
||||
78 --- 97
|
||||
78 --- 98
|
||||
78 x--> 89
|
||||
79 --- 87
|
||||
79 --- 95
|
||||
79 --- 96
|
||||
79 x--> 89
|
||||
80 --- 86
|
||||
80 --- 93
|
||||
80 --- 94
|
||||
80 x--> 89
|
||||
81 --- 85
|
||||
81 --- 91
|
||||
81 --- 92
|
||||
81 x--> 89
|
||||
84 --- 85
|
||||
84 --- 86
|
||||
84 --- 87
|
||||
84 --- 88
|
||||
84 --- 89
|
||||
84 --- 90
|
||||
84 --- 91
|
||||
84 --- 92
|
||||
84 --- 93
|
||||
84 --- 94
|
||||
84 --- 95
|
||||
84 --- 96
|
||||
84 --- 97
|
||||
84 --- 98
|
||||
91 <--x 85
|
||||
91 <--x 90
|
||||
92 <--x 85
|
||||
92 <--x 88
|
||||
93 <--x 86
|
||||
93 <--x 90
|
||||
94 <--x 85
|
||||
94 <--x 86
|
||||
95 <--x 87
|
||||
95 <--x 90
|
||||
96 <--x 86
|
||||
96 <--x 87
|
||||
97 <--x 88
|
||||
97 <--x 90
|
||||
98 <--x 87
|
||||
98 <--x 88
|
||||
99 --- 100
|
||||
99 --- 101
|
||||
99 --- 102
|
||||
99 --- 103
|
||||
99 --- 104
|
||||
99 --- 105
|
||||
99 --- 106
|
||||
99 --- 107
|
||||
99 --- 108
|
||||
99 --- 109
|
||||
99 --- 110
|
||||
105 <--x 100
|
||||
105 <--x 104
|
||||
106 <--x 100
|
||||
106 <--x 101
|
||||
107 <--x 101
|
||||
107 <--x 104
|
||||
108 <--x 101
|
||||
108 <--x 102
|
||||
109 <--x 102
|
||||
109 <--x 104
|
||||
110 <--x 102
|
||||
110 <--x 100
|
||||
10 <--x 111
|
||||
```
|
||||
|
@ -224,6 +224,15 @@ description: Artifact commands cube.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -234,6 +243,15 @@ description: Artifact commands cube.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -266,19 +284,19 @@ description: Artifact commands cube.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -313,19 +331,19 @@ description: Artifact commands cube.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -356,15 +374,6 @@ description: Artifact commands cube.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -375,6 +384,15 @@ description: Artifact commands cube.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -385,24 +403,6 @@ description: Artifact commands cube.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -18,8 +18,13 @@ flowchart LR
|
||||
14["Cap Start"]
|
||||
15["Cap End"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Opposite"]
|
||||
17["SweepEdge Adjacent"]
|
||||
18["SweepEdge Opposite"]
|
||||
19["SweepEdge Adjacent"]
|
||||
20["SweepEdge Opposite"]
|
||||
21["SweepEdge Adjacent"]
|
||||
22["SweepEdge Opposite"]
|
||||
23["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -29,15 +34,20 @@ flowchart LR
|
||||
2 ---- 9
|
||||
2 --- 8
|
||||
3 --- 13
|
||||
3 --- 18
|
||||
3 --- 22
|
||||
3 --- 23
|
||||
3 x--> 14
|
||||
4 --- 12
|
||||
4 --- 17
|
||||
4 --- 20
|
||||
4 --- 21
|
||||
4 x--> 14
|
||||
5 --- 11
|
||||
5 --- 16
|
||||
5 --- 18
|
||||
5 --- 19
|
||||
5 x--> 14
|
||||
6 --- 10
|
||||
6 --- 16
|
||||
6 --- 17
|
||||
6 x--> 14
|
||||
9 --- 10
|
||||
9 --- 11
|
||||
@ -48,10 +58,25 @@ flowchart LR
|
||||
9 --- 16
|
||||
9 --- 17
|
||||
9 --- 18
|
||||
16 <--x 11
|
||||
9 --- 19
|
||||
9 --- 20
|
||||
9 --- 21
|
||||
9 --- 22
|
||||
9 --- 23
|
||||
16 <--x 10
|
||||
16 <--x 15
|
||||
17 <--x 12
|
||||
17 <--x 15
|
||||
18 <--x 13
|
||||
17 <--x 10
|
||||
17 <--x 13
|
||||
18 <--x 11
|
||||
18 <--x 15
|
||||
19 <--x 10
|
||||
19 <--x 11
|
||||
20 <--x 12
|
||||
20 <--x 15
|
||||
21 <--x 11
|
||||
21 <--x 12
|
||||
22 <--x 13
|
||||
22 <--x 15
|
||||
23 <--x 12
|
||||
23 <--x 13
|
||||
```
|
||||
|
@ -224,6 +224,15 @@ description: Artifact commands cube_with_error.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -234,6 +243,15 @@ description: Artifact commands cube_with_error.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -266,19 +284,19 @@ description: Artifact commands cube_with_error.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -313,19 +331,19 @@ description: Artifact commands cube_with_error.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -356,15 +374,6 @@ description: Artifact commands cube_with_error.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -375,6 +384,15 @@ description: Artifact commands cube_with_error.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -384,5 +402,14 @@ description: Artifact commands cube_with_error.kcl
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -18,8 +18,13 @@ flowchart LR
|
||||
14["Cap Start"]
|
||||
15["Cap End"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Opposite"]
|
||||
17["SweepEdge Adjacent"]
|
||||
18["SweepEdge Opposite"]
|
||||
19["SweepEdge Adjacent"]
|
||||
20["SweepEdge Opposite"]
|
||||
21["SweepEdge Adjacent"]
|
||||
22["SweepEdge Opposite"]
|
||||
23["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -29,14 +34,20 @@ flowchart LR
|
||||
2 ---- 9
|
||||
2 --- 8
|
||||
3 --- 13
|
||||
3 --- 18
|
||||
3 --- 22
|
||||
3 --- 23
|
||||
3 x--> 14
|
||||
4 --- 12
|
||||
4 --- 17
|
||||
4 --- 20
|
||||
4 --- 21
|
||||
4 x--> 14
|
||||
5 --- 11
|
||||
5 --- 16
|
||||
5 --- 18
|
||||
5 --- 19
|
||||
5 x--> 14
|
||||
6 --- 10
|
||||
6 --- 16
|
||||
6 --- 17
|
||||
6 x--> 14
|
||||
9 --- 10
|
||||
9 --- 11
|
||||
@ -47,8 +58,25 @@ flowchart LR
|
||||
9 --- 16
|
||||
9 --- 17
|
||||
9 --- 18
|
||||
16 <--x 11
|
||||
9 --- 19
|
||||
9 --- 20
|
||||
9 --- 21
|
||||
9 --- 22
|
||||
9 --- 23
|
||||
16 <--x 10
|
||||
16 <--x 15
|
||||
17 <--x 12
|
||||
17 <--x 15
|
||||
17 <--x 10
|
||||
17 <--x 13
|
||||
18 <--x 11
|
||||
18 <--x 15
|
||||
19 <--x 10
|
||||
19 <--x 11
|
||||
20 <--x 12
|
||||
20 <--x 15
|
||||
21 <--x 11
|
||||
21 <--x 12
|
||||
22 <--x 13
|
||||
22 <--x 15
|
||||
23 <--x 12
|
||||
23 <--x 13
|
||||
```
|
||||
|
@ -334,6 +334,15 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -344,6 +353,15 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -376,19 +394,19 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -423,19 +441,19 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -466,15 +484,6 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -485,6 +494,15 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -504,24 +522,6 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -851,6 +851,15 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -861,6 +870,15 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -889,15 +907,6 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -908,6 +917,15 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -927,24 +945,6 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1234,6 +1234,15 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1244,6 +1253,15 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1272,15 +1290,6 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1291,6 +1300,15 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1310,24 +1328,6 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1617,6 +1617,15 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1627,6 +1636,15 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1655,15 +1673,6 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1674,6 +1683,15 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1693,24 +1711,6 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -2000,6 +2000,15 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -2010,6 +2019,15 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -2038,15 +2056,6 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -2057,6 +2066,15 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -2076,24 +2094,6 @@ description: Artifact commands fillet-and-shell.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -16,57 +16,57 @@ flowchart LR
|
||||
13["Segment<br>[1011, 1030, 0]"]
|
||||
14[Solid2d]
|
||||
end
|
||||
subgraph path27 [Path]
|
||||
27["Path<br>[1343, 1368, 0]"]
|
||||
end
|
||||
subgraph path28 [Path]
|
||||
28["Path<br>[1376, 1413, 0]"]
|
||||
29["Segment<br>[1376, 1413, 0]"]
|
||||
30[Solid2d]
|
||||
end
|
||||
subgraph path31 [Path]
|
||||
31["Path<br>[1439, 1477, 0]"]
|
||||
32["Segment<br>[1439, 1477, 0]"]
|
||||
33[Solid2d]
|
||||
31["Path<br>[1343, 1368, 0]"]
|
||||
end
|
||||
subgraph path39 [Path]
|
||||
39["Path<br>[1343, 1368, 0]"]
|
||||
subgraph path32 [Path]
|
||||
32["Path<br>[1376, 1413, 0]"]
|
||||
33["Segment<br>[1376, 1413, 0]"]
|
||||
34[Solid2d]
|
||||
end
|
||||
subgraph path40 [Path]
|
||||
40["Path<br>[1376, 1413, 0]"]
|
||||
41["Segment<br>[1376, 1413, 0]"]
|
||||
42[Solid2d]
|
||||
subgraph path35 [Path]
|
||||
35["Path<br>[1439, 1477, 0]"]
|
||||
36["Segment<br>[1439, 1477, 0]"]
|
||||
37[Solid2d]
|
||||
end
|
||||
subgraph path43 [Path]
|
||||
43["Path<br>[1439, 1477, 0]"]
|
||||
44["Segment<br>[1439, 1477, 0]"]
|
||||
45[Solid2d]
|
||||
subgraph path45 [Path]
|
||||
45["Path<br>[1343, 1368, 0]"]
|
||||
end
|
||||
subgraph path51 [Path]
|
||||
51["Path<br>[1343, 1368, 0]"]
|
||||
subgraph path46 [Path]
|
||||
46["Path<br>[1376, 1413, 0]"]
|
||||
47["Segment<br>[1376, 1413, 0]"]
|
||||
48[Solid2d]
|
||||
end
|
||||
subgraph path52 [Path]
|
||||
52["Path<br>[1376, 1413, 0]"]
|
||||
53["Segment<br>[1376, 1413, 0]"]
|
||||
54[Solid2d]
|
||||
subgraph path49 [Path]
|
||||
49["Path<br>[1439, 1477, 0]"]
|
||||
50["Segment<br>[1439, 1477, 0]"]
|
||||
51[Solid2d]
|
||||
end
|
||||
subgraph path55 [Path]
|
||||
55["Path<br>[1439, 1477, 0]"]
|
||||
56["Segment<br>[1439, 1477, 0]"]
|
||||
57[Solid2d]
|
||||
subgraph path59 [Path]
|
||||
59["Path<br>[1343, 1368, 0]"]
|
||||
end
|
||||
subgraph path60 [Path]
|
||||
60["Path<br>[1376, 1413, 0]"]
|
||||
61["Segment<br>[1376, 1413, 0]"]
|
||||
62[Solid2d]
|
||||
end
|
||||
subgraph path63 [Path]
|
||||
63["Path<br>[1343, 1368, 0]"]
|
||||
63["Path<br>[1439, 1477, 0]"]
|
||||
64["Segment<br>[1439, 1477, 0]"]
|
||||
65[Solid2d]
|
||||
end
|
||||
subgraph path64 [Path]
|
||||
64["Path<br>[1376, 1413, 0]"]
|
||||
65["Segment<br>[1376, 1413, 0]"]
|
||||
66[Solid2d]
|
||||
subgraph path73 [Path]
|
||||
73["Path<br>[1343, 1368, 0]"]
|
||||
end
|
||||
subgraph path67 [Path]
|
||||
67["Path<br>[1439, 1477, 0]"]
|
||||
68["Segment<br>[1439, 1477, 0]"]
|
||||
69[Solid2d]
|
||||
subgraph path74 [Path]
|
||||
74["Path<br>[1376, 1413, 0]"]
|
||||
75["Segment<br>[1376, 1413, 0]"]
|
||||
76[Solid2d]
|
||||
end
|
||||
subgraph path77 [Path]
|
||||
77["Path<br>[1439, 1477, 0]"]
|
||||
78["Segment<br>[1439, 1477, 0]"]
|
||||
79[Solid2d]
|
||||
end
|
||||
1["Plane<br>[373, 390, 0]"]
|
||||
8["Plane<br>[783, 802, 0]"]
|
||||
@ -78,33 +78,45 @@ flowchart LR
|
||||
20["Cap Start"]
|
||||
21["Cap End"]
|
||||
22["SweepEdge Opposite"]
|
||||
23["SweepEdge Opposite"]
|
||||
23["SweepEdge Adjacent"]
|
||||
24["SweepEdge Opposite"]
|
||||
25["SweepEdge Adjacent"]
|
||||
26["Plane<br>[1316, 1335, 0]"]
|
||||
34["Sweep Extrusion<br>[1486, 1510, 0]"]
|
||||
35[Wall]
|
||||
36["Cap Start"]
|
||||
37["Cap End"]
|
||||
38["Plane<br>[1316, 1335, 0]"]
|
||||
46["Sweep Extrusion<br>[1486, 1510, 0]"]
|
||||
47[Wall]
|
||||
48["Cap Start"]
|
||||
49["Cap End"]
|
||||
50["Plane<br>[1316, 1335, 0]"]
|
||||
58["Sweep Extrusion<br>[1486, 1510, 0]"]
|
||||
59[Wall]
|
||||
60["Cap Start"]
|
||||
61["Cap End"]
|
||||
62["Plane<br>[1316, 1335, 0]"]
|
||||
70["Sweep Extrusion<br>[1486, 1510, 0]"]
|
||||
71[Wall]
|
||||
72["Cap Start"]
|
||||
73["Cap End"]
|
||||
74["EdgeCut Fillet<br>[1070, 1276, 0]"]
|
||||
75["EdgeCut Fillet<br>[1070, 1276, 0]"]
|
||||
76["EdgeCut Fillet<br>[1070, 1276, 0]"]
|
||||
77["EdgeCut Fillet<br>[1070, 1276, 0]"]
|
||||
26["SweepEdge Opposite"]
|
||||
27["SweepEdge Adjacent"]
|
||||
28["SweepEdge Opposite"]
|
||||
29["SweepEdge Adjacent"]
|
||||
30["Plane<br>[1316, 1335, 0]"]
|
||||
38["Sweep Extrusion<br>[1486, 1510, 0]"]
|
||||
39[Wall]
|
||||
40["Cap Start"]
|
||||
41["Cap End"]
|
||||
42["SweepEdge Opposite"]
|
||||
43["SweepEdge Adjacent"]
|
||||
44["Plane<br>[1316, 1335, 0]"]
|
||||
52["Sweep Extrusion<br>[1486, 1510, 0]"]
|
||||
53[Wall]
|
||||
54["Cap Start"]
|
||||
55["Cap End"]
|
||||
56["SweepEdge Opposite"]
|
||||
57["SweepEdge Adjacent"]
|
||||
58["Plane<br>[1316, 1335, 0]"]
|
||||
66["Sweep Extrusion<br>[1486, 1510, 0]"]
|
||||
67[Wall]
|
||||
68["Cap Start"]
|
||||
69["Cap End"]
|
||||
70["SweepEdge Opposite"]
|
||||
71["SweepEdge Adjacent"]
|
||||
72["Plane<br>[1316, 1335, 0]"]
|
||||
80["Sweep Extrusion<br>[1486, 1510, 0]"]
|
||||
81[Wall]
|
||||
82["Cap Start"]
|
||||
83["Cap End"]
|
||||
84["SweepEdge Opposite"]
|
||||
85["SweepEdge Adjacent"]
|
||||
86["EdgeCut Fillet<br>[1070, 1276, 0]"]
|
||||
87["EdgeCut Fillet<br>[1070, 1276, 0]"]
|
||||
88["EdgeCut Fillet<br>[1070, 1276, 0]"]
|
||||
89["EdgeCut Fillet<br>[1070, 1276, 0]"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -119,16 +131,20 @@ flowchart LR
|
||||
9 ---- 15
|
||||
9 --- 14
|
||||
10 --- 16
|
||||
10 --- 25
|
||||
10 --- 22
|
||||
10 --- 23
|
||||
10 x--> 20
|
||||
11 --- 17
|
||||
11 --- 22
|
||||
11 --- 24
|
||||
11 --- 25
|
||||
11 x--> 20
|
||||
12 --- 18
|
||||
12 --- 23
|
||||
12 --- 26
|
||||
12 --- 27
|
||||
12 x--> 20
|
||||
13 --- 19
|
||||
13 --- 24
|
||||
13 --- 28
|
||||
13 --- 29
|
||||
13 x--> 20
|
||||
15 --- 16
|
||||
15 --- 17
|
||||
@ -140,63 +156,100 @@ flowchart LR
|
||||
15 --- 23
|
||||
15 --- 24
|
||||
15 --- 25
|
||||
22 <--x 17
|
||||
15 --- 26
|
||||
15 --- 27
|
||||
15 --- 28
|
||||
15 --- 29
|
||||
22 <--x 16
|
||||
22 <--x 21
|
||||
23 <--x 18
|
||||
23 <--x 21
|
||||
24 <--x 19
|
||||
24 <--x 17
|
||||
24 <--x 21
|
||||
26 --- 27
|
||||
26 --- 28
|
||||
26 --- 31
|
||||
28 --- 29
|
||||
28 ---- 34
|
||||
28 --- 30
|
||||
29 --- 35
|
||||
29 x--> 36
|
||||
31 --- 32
|
||||
31 --- 33
|
||||
34 --- 35
|
||||
34 --- 36
|
||||
34 --- 37
|
||||
26 <--x 18
|
||||
26 <--x 21
|
||||
28 <--x 19
|
||||
28 <--x 21
|
||||
30 --- 31
|
||||
30 --- 32
|
||||
30 --- 35
|
||||
32 --- 33
|
||||
32 ---- 38
|
||||
32 --- 34
|
||||
33 --- 39
|
||||
33 --- 42
|
||||
33 --- 43
|
||||
33 x--> 40
|
||||
35 --- 36
|
||||
35 --- 37
|
||||
38 --- 39
|
||||
38 --- 40
|
||||
38 --- 41
|
||||
38 --- 42
|
||||
38 --- 43
|
||||
40 --- 41
|
||||
40 ---- 46
|
||||
40 --- 42
|
||||
41 --- 47
|
||||
41 x--> 48
|
||||
43 --- 44
|
||||
43 --- 45
|
||||
42 <--x 39
|
||||
42 <--x 41
|
||||
43 <--x 39
|
||||
44 --- 45
|
||||
44 --- 46
|
||||
44 --- 49
|
||||
46 --- 47
|
||||
46 ---- 52
|
||||
46 --- 48
|
||||
46 --- 49
|
||||
50 --- 51
|
||||
50 --- 52
|
||||
50 --- 55
|
||||
47 --- 53
|
||||
47 --- 56
|
||||
47 --- 57
|
||||
47 x--> 54
|
||||
49 --- 50
|
||||
49 --- 51
|
||||
52 --- 53
|
||||
52 ---- 58
|
||||
52 --- 54
|
||||
53 --- 59
|
||||
53 x--> 60
|
||||
55 --- 56
|
||||
55 --- 57
|
||||
52 --- 55
|
||||
52 --- 56
|
||||
52 --- 57
|
||||
56 <--x 53
|
||||
56 <--x 55
|
||||
57 <--x 53
|
||||
58 --- 59
|
||||
58 --- 60
|
||||
58 --- 61
|
||||
62 --- 63
|
||||
62 --- 64
|
||||
62 --- 67
|
||||
64 --- 65
|
||||
64 ---- 70
|
||||
64 --- 66
|
||||
65 --- 71
|
||||
65 x--> 72
|
||||
67 --- 68
|
||||
67 --- 69
|
||||
70 --- 71
|
||||
70 --- 72
|
||||
70 --- 73
|
||||
25 <--x 74
|
||||
58 --- 63
|
||||
60 --- 61
|
||||
60 ---- 66
|
||||
60 --- 62
|
||||
61 --- 67
|
||||
61 --- 70
|
||||
61 --- 71
|
||||
61 x--> 68
|
||||
63 --- 64
|
||||
63 --- 65
|
||||
66 --- 67
|
||||
66 --- 68
|
||||
66 --- 69
|
||||
66 --- 70
|
||||
66 --- 71
|
||||
70 <--x 67
|
||||
70 <--x 69
|
||||
71 <--x 67
|
||||
72 --- 73
|
||||
72 --- 74
|
||||
72 --- 77
|
||||
74 --- 75
|
||||
74 ---- 80
|
||||
74 --- 76
|
||||
75 --- 81
|
||||
75 --- 84
|
||||
75 --- 85
|
||||
75 x--> 82
|
||||
77 --- 78
|
||||
77 --- 79
|
||||
80 --- 81
|
||||
80 --- 82
|
||||
80 --- 83
|
||||
80 --- 84
|
||||
80 --- 85
|
||||
84 <--x 81
|
||||
84 <--x 83
|
||||
85 <--x 81
|
||||
23 <--x 86
|
||||
25 <--x 87
|
||||
27 <--x 88
|
||||
29 <--x 89
|
||||
```
|
||||
|
@ -275,6 +275,15 @@ description: Artifact commands flush_batch_on_end.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -285,6 +294,15 @@ description: Artifact commands flush_batch_on_end.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -313,15 +331,6 @@ description: Artifact commands flush_batch_on_end.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -332,6 +341,15 @@ description: Artifact commands flush_batch_on_end.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -342,24 +360,6 @@ description: Artifact commands flush_batch_on_end.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -15,16 +15,25 @@ flowchart LR
|
||||
9[Wall]
|
||||
10["Cap Start"]
|
||||
11["Cap End"]
|
||||
12["SweepEdge Opposite"]
|
||||
13["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
1 --- 5
|
||||
2 --- 3
|
||||
2 ---- 8
|
||||
2 --- 4
|
||||
3 --- 9
|
||||
3 --- 12
|
||||
3 --- 13
|
||||
3 x--> 10
|
||||
5 --- 6
|
||||
5 --- 7
|
||||
8 --- 9
|
||||
8 --- 10
|
||||
8 --- 11
|
||||
8 --- 12
|
||||
8 --- 13
|
||||
12 <--x 9
|
||||
12 <--x 11
|
||||
13 <--x 9
|
||||
```
|
||||
|
@ -207,6 +207,15 @@ description: Artifact commands function_sketch.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -217,6 +226,15 @@ description: Artifact commands function_sketch.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -249,19 +267,19 @@ description: Artifact commands function_sketch.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -296,19 +314,19 @@ description: Artifact commands function_sketch.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -339,15 +357,6 @@ description: Artifact commands function_sketch.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -358,6 +367,15 @@ description: Artifact commands function_sketch.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -368,24 +386,6 @@ description: Artifact commands function_sketch.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -17,8 +17,13 @@ flowchart LR
|
||||
13["Cap Start"]
|
||||
14["Cap End"]
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
16["SweepEdge Adjacent"]
|
||||
17["SweepEdge Opposite"]
|
||||
18["SweepEdge Adjacent"]
|
||||
19["SweepEdge Opposite"]
|
||||
20["SweepEdge Adjacent"]
|
||||
21["SweepEdge Opposite"]
|
||||
22["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -27,15 +32,20 @@ flowchart LR
|
||||
2 ---- 8
|
||||
2 --- 7
|
||||
3 --- 12
|
||||
3 --- 17
|
||||
3 --- 21
|
||||
3 --- 22
|
||||
3 x--> 13
|
||||
4 --- 11
|
||||
4 --- 16
|
||||
4 --- 19
|
||||
4 --- 20
|
||||
4 x--> 13
|
||||
5 --- 10
|
||||
5 --- 15
|
||||
5 --- 17
|
||||
5 --- 18
|
||||
5 x--> 13
|
||||
6 --- 9
|
||||
6 --- 15
|
||||
6 --- 16
|
||||
6 x--> 13
|
||||
8 --- 9
|
||||
8 --- 10
|
||||
@ -46,10 +56,25 @@ flowchart LR
|
||||
8 --- 15
|
||||
8 --- 16
|
||||
8 --- 17
|
||||
15 <--x 10
|
||||
8 --- 18
|
||||
8 --- 19
|
||||
8 --- 20
|
||||
8 --- 21
|
||||
8 --- 22
|
||||
15 <--x 9
|
||||
15 <--x 14
|
||||
16 <--x 11
|
||||
16 <--x 14
|
||||
17 <--x 12
|
||||
16 <--x 9
|
||||
16 <--x 12
|
||||
17 <--x 10
|
||||
17 <--x 14
|
||||
18 <--x 9
|
||||
18 <--x 10
|
||||
19 <--x 11
|
||||
19 <--x 14
|
||||
20 <--x 10
|
||||
20 <--x 11
|
||||
21 <--x 12
|
||||
21 <--x 14
|
||||
22 <--x 11
|
||||
22 <--x 12
|
||||
```
|
||||
|
@ -207,6 +207,15 @@ description: Artifact commands function_sketch_with_position.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -217,6 +226,15 @@ description: Artifact commands function_sketch_with_position.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -249,19 +267,19 @@ description: Artifact commands function_sketch_with_position.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -296,19 +314,19 @@ description: Artifact commands function_sketch_with_position.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -339,15 +357,6 @@ description: Artifact commands function_sketch_with_position.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -358,6 +367,15 @@ description: Artifact commands function_sketch_with_position.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -368,24 +386,6 @@ description: Artifact commands function_sketch_with_position.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -17,8 +17,13 @@ flowchart LR
|
||||
13["Cap Start"]
|
||||
14["Cap End"]
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
16["SweepEdge Adjacent"]
|
||||
17["SweepEdge Opposite"]
|
||||
18["SweepEdge Adjacent"]
|
||||
19["SweepEdge Opposite"]
|
||||
20["SweepEdge Adjacent"]
|
||||
21["SweepEdge Opposite"]
|
||||
22["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -27,15 +32,20 @@ flowchart LR
|
||||
2 ---- 8
|
||||
2 --- 7
|
||||
3 --- 12
|
||||
3 --- 17
|
||||
3 --- 21
|
||||
3 --- 22
|
||||
3 x--> 13
|
||||
4 --- 11
|
||||
4 --- 16
|
||||
4 --- 19
|
||||
4 --- 20
|
||||
4 x--> 13
|
||||
5 --- 10
|
||||
5 --- 15
|
||||
5 --- 17
|
||||
5 --- 18
|
||||
5 x--> 13
|
||||
6 --- 9
|
||||
6 --- 15
|
||||
6 --- 16
|
||||
6 x--> 13
|
||||
8 --- 9
|
||||
8 --- 10
|
||||
@ -46,10 +56,25 @@ flowchart LR
|
||||
8 --- 15
|
||||
8 --- 16
|
||||
8 --- 17
|
||||
15 <--x 10
|
||||
8 --- 18
|
||||
8 --- 19
|
||||
8 --- 20
|
||||
8 --- 21
|
||||
8 --- 22
|
||||
15 <--x 9
|
||||
15 <--x 14
|
||||
16 <--x 11
|
||||
16 <--x 14
|
||||
17 <--x 12
|
||||
16 <--x 9
|
||||
16 <--x 12
|
||||
17 <--x 10
|
||||
17 <--x 14
|
||||
18 <--x 9
|
||||
18 <--x 10
|
||||
19 <--x 11
|
||||
19 <--x 14
|
||||
20 <--x 10
|
||||
20 <--x 11
|
||||
21 <--x 12
|
||||
21 <--x 14
|
||||
22 <--x 11
|
||||
22 <--x 12
|
||||
```
|
||||
|
@ -181,6 +181,15 @@ description: Artifact commands helix_ccw.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -191,6 +200,15 @@ description: Artifact commands helix_ccw.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -210,24 +228,6 @@ description: Artifact commands helix_ccw.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -10,13 +10,22 @@ flowchart LR
|
||||
6[Wall]
|
||||
7["Cap Start"]
|
||||
8["Cap End"]
|
||||
9["SweepEdge Opposite"]
|
||||
10["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 ---- 5
|
||||
2 --- 4
|
||||
3 --- 6
|
||||
3 --- 9
|
||||
3 --- 10
|
||||
3 x--> 7
|
||||
5 --- 6
|
||||
5 --- 7
|
||||
5 --- 8
|
||||
5 --- 9
|
||||
5 --- 10
|
||||
9 <--x 6
|
||||
9 <--x 8
|
||||
10 <--x 6
|
||||
```
|
||||
|
@ -794,6 +794,15 @@ description: Artifact commands i_shape.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -804,6 +813,15 @@ description: Artifact commands i_shape.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -836,19 +854,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -883,19 +901,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -930,19 +948,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -977,19 +995,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1024,19 +1042,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1071,19 +1089,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1118,19 +1136,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1165,19 +1183,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1212,19 +1230,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1259,19 +1277,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1306,19 +1324,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1353,19 +1371,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1400,19 +1418,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1447,19 +1465,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1494,19 +1512,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1541,19 +1559,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1588,19 +1606,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1635,19 +1653,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1682,19 +1700,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1729,19 +1747,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1776,19 +1794,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1823,19 +1841,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1870,19 +1888,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1917,19 +1935,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -1964,19 +1982,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -2011,19 +2029,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -2058,19 +2076,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -2105,19 +2123,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -2152,19 +2170,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -2199,19 +2217,19 @@ description: Artifact commands i_shape.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -2242,15 +2260,6 @@ description: Artifact commands i_shape.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -2261,6 +2270,15 @@ description: Artifact commands i_shape.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -2271,24 +2289,6 @@ description: Artifact commands i_shape.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -72,28 +72,53 @@ flowchart LR
|
||||
66["Cap Start"]
|
||||
67["Cap End"]
|
||||
68["SweepEdge Opposite"]
|
||||
69["SweepEdge Opposite"]
|
||||
69["SweepEdge Adjacent"]
|
||||
70["SweepEdge Opposite"]
|
||||
71["SweepEdge Opposite"]
|
||||
71["SweepEdge Adjacent"]
|
||||
72["SweepEdge Opposite"]
|
||||
73["SweepEdge Opposite"]
|
||||
73["SweepEdge Adjacent"]
|
||||
74["SweepEdge Opposite"]
|
||||
75["SweepEdge Opposite"]
|
||||
75["SweepEdge Adjacent"]
|
||||
76["SweepEdge Opposite"]
|
||||
77["SweepEdge Opposite"]
|
||||
77["SweepEdge Adjacent"]
|
||||
78["SweepEdge Opposite"]
|
||||
79["SweepEdge Opposite"]
|
||||
79["SweepEdge Adjacent"]
|
||||
80["SweepEdge Opposite"]
|
||||
81["SweepEdge Opposite"]
|
||||
81["SweepEdge Adjacent"]
|
||||
82["SweepEdge Opposite"]
|
||||
83["SweepEdge Opposite"]
|
||||
83["SweepEdge Adjacent"]
|
||||
84["SweepEdge Opposite"]
|
||||
85["SweepEdge Opposite"]
|
||||
85["SweepEdge Adjacent"]
|
||||
86["SweepEdge Opposite"]
|
||||
87["SweepEdge Opposite"]
|
||||
87["SweepEdge Adjacent"]
|
||||
88["SweepEdge Opposite"]
|
||||
89["SweepEdge Opposite"]
|
||||
89["SweepEdge Adjacent"]
|
||||
90["SweepEdge Opposite"]
|
||||
91["SweepEdge Adjacent"]
|
||||
92["SweepEdge Opposite"]
|
||||
93["SweepEdge Adjacent"]
|
||||
94["SweepEdge Opposite"]
|
||||
95["SweepEdge Adjacent"]
|
||||
96["SweepEdge Opposite"]
|
||||
97["SweepEdge Adjacent"]
|
||||
98["SweepEdge Opposite"]
|
||||
99["SweepEdge Adjacent"]
|
||||
100["SweepEdge Opposite"]
|
||||
101["SweepEdge Adjacent"]
|
||||
102["SweepEdge Opposite"]
|
||||
103["SweepEdge Adjacent"]
|
||||
104["SweepEdge Opposite"]
|
||||
105["SweepEdge Adjacent"]
|
||||
106["SweepEdge Opposite"]
|
||||
107["SweepEdge Adjacent"]
|
||||
108["SweepEdge Opposite"]
|
||||
109["SweepEdge Adjacent"]
|
||||
110["SweepEdge Opposite"]
|
||||
111["SweepEdge Adjacent"]
|
||||
112["SweepEdge Opposite"]
|
||||
113["SweepEdge Adjacent"]
|
||||
114["SweepEdge Opposite"]
|
||||
115["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -123,75 +148,100 @@ flowchart LR
|
||||
2 ---- 41
|
||||
2 --- 28
|
||||
3 --- 42
|
||||
3 --- 68
|
||||
3 --- 69
|
||||
3 x--> 66
|
||||
4 --- 43
|
||||
4 --- 68
|
||||
4 --- 70
|
||||
4 --- 71
|
||||
4 x--> 66
|
||||
5 --- 44
|
||||
5 --- 69
|
||||
5 --- 72
|
||||
5 --- 73
|
||||
5 x--> 66
|
||||
6 --- 45
|
||||
6 --- 70
|
||||
6 --- 74
|
||||
6 --- 75
|
||||
6 x--> 66
|
||||
7 --- 46
|
||||
7 --- 71
|
||||
7 --- 76
|
||||
7 --- 77
|
||||
7 x--> 66
|
||||
8 --- 47
|
||||
8 --- 72
|
||||
8 --- 78
|
||||
8 --- 79
|
||||
8 x--> 66
|
||||
9 --- 48
|
||||
9 --- 73
|
||||
9 --- 80
|
||||
9 --- 81
|
||||
9 x--> 66
|
||||
10 --- 49
|
||||
10 --- 74
|
||||
10 --- 82
|
||||
10 --- 83
|
||||
10 x--> 66
|
||||
11 --- 50
|
||||
11 --- 75
|
||||
11 --- 84
|
||||
11 --- 85
|
||||
11 x--> 66
|
||||
12 --- 51
|
||||
12 --- 76
|
||||
12 --- 86
|
||||
12 --- 87
|
||||
12 x--> 66
|
||||
13 --- 52
|
||||
13 --- 77
|
||||
13 --- 88
|
||||
13 --- 89
|
||||
13 x--> 66
|
||||
14 --- 53
|
||||
14 --- 78
|
||||
14 --- 90
|
||||
14 --- 91
|
||||
14 x--> 66
|
||||
15 --- 54
|
||||
15 --- 79
|
||||
15 --- 92
|
||||
15 --- 93
|
||||
15 x--> 66
|
||||
16 --- 55
|
||||
16 --- 80
|
||||
16 --- 94
|
||||
16 --- 95
|
||||
16 x--> 66
|
||||
17 --- 56
|
||||
17 --- 81
|
||||
17 --- 96
|
||||
17 --- 97
|
||||
17 x--> 66
|
||||
18 --- 57
|
||||
18 --- 82
|
||||
18 --- 98
|
||||
18 --- 99
|
||||
18 x--> 66
|
||||
19 --- 58
|
||||
19 --- 83
|
||||
19 --- 100
|
||||
19 --- 101
|
||||
19 x--> 66
|
||||
20 --- 59
|
||||
20 --- 84
|
||||
20 --- 102
|
||||
20 --- 103
|
||||
20 x--> 66
|
||||
21 --- 60
|
||||
21 --- 85
|
||||
21 --- 104
|
||||
21 --- 105
|
||||
21 x--> 66
|
||||
22 --- 61
|
||||
22 --- 86
|
||||
22 --- 106
|
||||
22 --- 107
|
||||
22 x--> 66
|
||||
23 --- 62
|
||||
23 --- 87
|
||||
23 --- 108
|
||||
23 --- 109
|
||||
23 x--> 66
|
||||
24 --- 63
|
||||
24 --- 88
|
||||
24 --- 110
|
||||
24 --- 111
|
||||
24 x--> 66
|
||||
25 --- 64
|
||||
25 --- 89
|
||||
25 --- 112
|
||||
25 --- 113
|
||||
25 x--> 66
|
||||
26 --- 65
|
||||
26 --- 90
|
||||
26 --- 114
|
||||
26 --- 115
|
||||
26 x--> 66
|
||||
29 --- 30
|
||||
30 --- 31
|
||||
@ -253,50 +303,125 @@ flowchart LR
|
||||
41 --- 88
|
||||
41 --- 89
|
||||
41 --- 90
|
||||
68 <--x 43
|
||||
41 --- 91
|
||||
41 --- 92
|
||||
41 --- 93
|
||||
41 --- 94
|
||||
41 --- 95
|
||||
41 --- 96
|
||||
41 --- 97
|
||||
41 --- 98
|
||||
41 --- 99
|
||||
41 --- 100
|
||||
41 --- 101
|
||||
41 --- 102
|
||||
41 --- 103
|
||||
41 --- 104
|
||||
41 --- 105
|
||||
41 --- 106
|
||||
41 --- 107
|
||||
41 --- 108
|
||||
41 --- 109
|
||||
41 --- 110
|
||||
41 --- 111
|
||||
41 --- 112
|
||||
41 --- 113
|
||||
41 --- 114
|
||||
41 --- 115
|
||||
68 <--x 42
|
||||
68 <--x 67
|
||||
69 <--x 44
|
||||
69 <--x 67
|
||||
70 <--x 45
|
||||
69 <--x 42
|
||||
69 <--x 43
|
||||
70 <--x 43
|
||||
70 <--x 67
|
||||
71 <--x 46
|
||||
71 <--x 67
|
||||
72 <--x 47
|
||||
71 <--x 43
|
||||
71 <--x 44
|
||||
72 <--x 44
|
||||
72 <--x 67
|
||||
73 <--x 48
|
||||
73 <--x 67
|
||||
74 <--x 49
|
||||
73 <--x 44
|
||||
73 <--x 45
|
||||
74 <--x 45
|
||||
74 <--x 67
|
||||
75 <--x 50
|
||||
75 <--x 67
|
||||
76 <--x 51
|
||||
75 <--x 45
|
||||
75 <--x 46
|
||||
76 <--x 46
|
||||
76 <--x 67
|
||||
77 <--x 52
|
||||
77 <--x 67
|
||||
78 <--x 53
|
||||
77 <--x 46
|
||||
77 <--x 47
|
||||
78 <--x 47
|
||||
78 <--x 67
|
||||
79 <--x 54
|
||||
79 <--x 67
|
||||
80 <--x 55
|
||||
79 <--x 47
|
||||
79 <--x 48
|
||||
80 <--x 48
|
||||
80 <--x 67
|
||||
81 <--x 56
|
||||
81 <--x 67
|
||||
82 <--x 57
|
||||
81 <--x 48
|
||||
81 <--x 49
|
||||
82 <--x 49
|
||||
82 <--x 67
|
||||
83 <--x 58
|
||||
83 <--x 67
|
||||
84 <--x 59
|
||||
83 <--x 49
|
||||
83 <--x 50
|
||||
84 <--x 50
|
||||
84 <--x 67
|
||||
85 <--x 60
|
||||
85 <--x 67
|
||||
86 <--x 61
|
||||
85 <--x 50
|
||||
85 <--x 51
|
||||
86 <--x 51
|
||||
86 <--x 67
|
||||
87 <--x 62
|
||||
87 <--x 67
|
||||
88 <--x 63
|
||||
87 <--x 51
|
||||
87 <--x 52
|
||||
88 <--x 52
|
||||
88 <--x 67
|
||||
89 <--x 64
|
||||
89 <--x 67
|
||||
90 <--x 65
|
||||
89 <--x 52
|
||||
89 <--x 53
|
||||
90 <--x 53
|
||||
90 <--x 67
|
||||
91 <--x 53
|
||||
91 <--x 54
|
||||
92 <--x 54
|
||||
92 <--x 67
|
||||
93 <--x 54
|
||||
93 <--x 55
|
||||
94 <--x 55
|
||||
94 <--x 67
|
||||
95 <--x 55
|
||||
95 <--x 56
|
||||
96 <--x 56
|
||||
96 <--x 67
|
||||
97 <--x 56
|
||||
97 <--x 57
|
||||
98 <--x 57
|
||||
98 <--x 67
|
||||
99 <--x 57
|
||||
99 <--x 58
|
||||
100 <--x 58
|
||||
100 <--x 67
|
||||
101 <--x 58
|
||||
101 <--x 59
|
||||
102 <--x 59
|
||||
102 <--x 67
|
||||
103 <--x 59
|
||||
103 <--x 60
|
||||
104 <--x 60
|
||||
104 <--x 67
|
||||
105 <--x 60
|
||||
105 <--x 61
|
||||
106 <--x 61
|
||||
106 <--x 67
|
||||
107 <--x 61
|
||||
107 <--x 62
|
||||
108 <--x 62
|
||||
108 <--x 67
|
||||
109 <--x 62
|
||||
109 <--x 63
|
||||
110 <--x 63
|
||||
110 <--x 67
|
||||
111 <--x 63
|
||||
111 <--x 64
|
||||
112 <--x 64
|
||||
112 <--x 67
|
||||
113 <--x 64
|
||||
113 <--x 65
|
||||
114 <--x 65
|
||||
114 <--x 67
|
||||
115 <--x 42
|
||||
115 <--x 65
|
||||
```
|
||||
|
@ -5571268,6 +5571268,15 @@ description: Artifact commands import_async.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -5571278,6 +5571287,15 @@ description: Artifact commands import_async.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -5571297,24 +5571315,6 @@ description: Artifact commands import_async.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -5575117,6 +5575117,15 @@ description: Artifact commands import_async.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -5575127,6 +5575136,15 @@ description: Artifact commands import_async.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -5575159,19 +5575177,19 @@ description: Artifact commands import_async.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -5575206,19 +5575224,19 @@ description: Artifact commands import_async.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -5575249,15 +5575267,6 @@ description: Artifact commands import_async.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -5575268,6 +5575277,15 @@ description: Artifact commands import_async.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -5575287,24 +5575305,6 @@ description: Artifact commands import_async.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -5,10 +5,8 @@ flowchart LR
|
||||
4["Segment<br>[1081, 1131, 0]"]
|
||||
5[Solid2d]
|
||||
end
|
||||
subgraph path11 [Path]
|
||||
11["Path<br>[1608, 1645, 0]"]
|
||||
12["Segment<br>[1296, 1334, 0]"]
|
||||
13["Segment<br>[1296, 1334, 0]"]
|
||||
subgraph path13 [Path]
|
||||
13["Path<br>[1608, 1645, 0]"]
|
||||
14["Segment<br>[1296, 1334, 0]"]
|
||||
15["Segment<br>[1296, 1334, 0]"]
|
||||
16["Segment<br>[1296, 1334, 0]"]
|
||||
@ -108,9 +106,9 @@ flowchart LR
|
||||
110["Segment<br>[1296, 1334, 0]"]
|
||||
111["Segment<br>[1296, 1334, 0]"]
|
||||
112["Segment<br>[1296, 1334, 0]"]
|
||||
113["Segment<br>[1711, 1809, 0]"]
|
||||
114["Segment<br>[1524, 1554, 0]"]
|
||||
115["Segment<br>[1524, 1554, 0]"]
|
||||
113["Segment<br>[1296, 1334, 0]"]
|
||||
114["Segment<br>[1296, 1334, 0]"]
|
||||
115["Segment<br>[1711, 1809, 0]"]
|
||||
116["Segment<br>[1524, 1554, 0]"]
|
||||
117["Segment<br>[1524, 1554, 0]"]
|
||||
118["Segment<br>[1524, 1554, 0]"]
|
||||
@ -210,18 +208,20 @@ flowchart LR
|
||||
212["Segment<br>[1524, 1554, 0]"]
|
||||
213["Segment<br>[1524, 1554, 0]"]
|
||||
214["Segment<br>[1524, 1554, 0]"]
|
||||
215["Segment<br>[1869, 1876, 0]"]
|
||||
216[Solid2d]
|
||||
215["Segment<br>[1524, 1554, 0]"]
|
||||
216["Segment<br>[1524, 1554, 0]"]
|
||||
217["Segment<br>[1869, 1876, 0]"]
|
||||
218[Solid2d]
|
||||
end
|
||||
subgraph path218 [Path]
|
||||
218["Path<br>[2357, 2436, 0]"]
|
||||
219["Segment<br>[2442, 2469, 0]"]
|
||||
220["Segment<br>[2475, 2503, 0]"]
|
||||
221["Segment<br>[2509, 2537, 0]"]
|
||||
222["Segment<br>[2543, 2659, 0]"]
|
||||
223["Segment<br>[2665, 2770, 0]"]
|
||||
224["Segment<br>[2776, 2783, 0]"]
|
||||
225[Solid2d]
|
||||
subgraph path220 [Path]
|
||||
220["Path<br>[2357, 2436, 0]"]
|
||||
221["Segment<br>[2442, 2469, 0]"]
|
||||
222["Segment<br>[2475, 2503, 0]"]
|
||||
223["Segment<br>[2509, 2537, 0]"]
|
||||
224["Segment<br>[2543, 2659, 0]"]
|
||||
225["Segment<br>[2665, 2770, 0]"]
|
||||
226["Segment<br>[2776, 2783, 0]"]
|
||||
227[Solid2d]
|
||||
end
|
||||
1["Plane<br>[168, 185, 0]"]
|
||||
2["Plane<br>[1058, 1075, 0]"]
|
||||
@ -229,265 +229,299 @@ flowchart LR
|
||||
7[Wall]
|
||||
8["Cap Start"]
|
||||
9["Cap End"]
|
||||
10["Plane<br>[1585, 1602, 0]"]
|
||||
217["Sweep Extrusion<br>[1882, 1910, 0]"]
|
||||
226["Sweep Extrusion<br>[2789, 2818, 0]"]
|
||||
227[Wall]
|
||||
228[Wall]
|
||||
10["SweepEdge Opposite"]
|
||||
11["SweepEdge Adjacent"]
|
||||
12["Plane<br>[1585, 1602, 0]"]
|
||||
219["Sweep Extrusion<br>[1882, 1910, 0]"]
|
||||
228["Sweep Extrusion<br>[2789, 2818, 0]"]
|
||||
229[Wall]
|
||||
230[Wall]
|
||||
231["SweepEdge Opposite"]
|
||||
232["SweepEdge Opposite"]
|
||||
231[Wall]
|
||||
232[Wall]
|
||||
233["SweepEdge Opposite"]
|
||||
234["StartSketchOnFace<br>[2320, 2351, 0]"]
|
||||
234["SweepEdge Adjacent"]
|
||||
235["SweepEdge Opposite"]
|
||||
236["SweepEdge Adjacent"]
|
||||
237["SweepEdge Opposite"]
|
||||
238["SweepEdge Adjacent"]
|
||||
239["SweepEdge Opposite"]
|
||||
240["SweepEdge Adjacent"]
|
||||
241["StartSketchOnFace<br>[2320, 2351, 0]"]
|
||||
2 --- 3
|
||||
3 --- 4
|
||||
3 ---- 6
|
||||
3 --- 5
|
||||
4 --- 7
|
||||
4 --- 10
|
||||
4 --- 11
|
||||
4 x--> 8
|
||||
6 --- 7
|
||||
6 --- 8
|
||||
6 --- 9
|
||||
9 --- 218
|
||||
10 --- 11
|
||||
11 --- 12
|
||||
11 --- 13
|
||||
11 --- 14
|
||||
11 --- 15
|
||||
11 --- 16
|
||||
11 --- 17
|
||||
11 --- 18
|
||||
11 --- 19
|
||||
11 --- 20
|
||||
11 --- 21
|
||||
11 --- 22
|
||||
11 --- 23
|
||||
11 --- 24
|
||||
11 --- 25
|
||||
11 --- 26
|
||||
11 --- 27
|
||||
11 --- 28
|
||||
11 --- 29
|
||||
11 --- 30
|
||||
11 --- 31
|
||||
11 --- 32
|
||||
11 --- 33
|
||||
11 --- 34
|
||||
11 --- 35
|
||||
11 --- 36
|
||||
11 --- 37
|
||||
11 --- 38
|
||||
11 --- 39
|
||||
11 --- 40
|
||||
11 --- 41
|
||||
11 --- 42
|
||||
11 --- 43
|
||||
11 --- 44
|
||||
11 --- 45
|
||||
11 --- 46
|
||||
11 --- 47
|
||||
11 --- 48
|
||||
11 --- 49
|
||||
11 --- 50
|
||||
11 --- 51
|
||||
11 --- 52
|
||||
11 --- 53
|
||||
11 --- 54
|
||||
11 --- 55
|
||||
11 --- 56
|
||||
11 --- 57
|
||||
11 --- 58
|
||||
11 --- 59
|
||||
11 --- 60
|
||||
11 --- 61
|
||||
11 --- 62
|
||||
11 --- 63
|
||||
11 --- 64
|
||||
11 --- 65
|
||||
11 --- 66
|
||||
11 --- 67
|
||||
11 --- 68
|
||||
11 --- 69
|
||||
11 --- 70
|
||||
11 --- 71
|
||||
11 --- 72
|
||||
11 --- 73
|
||||
11 --- 74
|
||||
11 --- 75
|
||||
11 --- 76
|
||||
11 --- 77
|
||||
11 --- 78
|
||||
11 --- 79
|
||||
11 --- 80
|
||||
11 --- 81
|
||||
11 --- 82
|
||||
11 --- 83
|
||||
11 --- 84
|
||||
11 --- 85
|
||||
11 --- 86
|
||||
11 --- 87
|
||||
11 --- 88
|
||||
11 --- 89
|
||||
11 --- 90
|
||||
11 --- 91
|
||||
11 --- 92
|
||||
11 --- 93
|
||||
11 --- 94
|
||||
11 --- 95
|
||||
11 --- 96
|
||||
11 --- 97
|
||||
11 --- 98
|
||||
11 --- 99
|
||||
11 --- 100
|
||||
11 --- 101
|
||||
11 --- 102
|
||||
11 --- 103
|
||||
11 --- 104
|
||||
11 --- 105
|
||||
11 --- 106
|
||||
11 --- 107
|
||||
11 --- 108
|
||||
11 --- 109
|
||||
11 --- 110
|
||||
11 --- 111
|
||||
11 --- 112
|
||||
11 --- 113
|
||||
11 --- 114
|
||||
11 --- 115
|
||||
11 --- 116
|
||||
11 --- 117
|
||||
11 --- 118
|
||||
11 --- 119
|
||||
11 --- 120
|
||||
11 --- 121
|
||||
11 --- 122
|
||||
11 --- 123
|
||||
11 --- 124
|
||||
11 --- 125
|
||||
11 --- 126
|
||||
11 --- 127
|
||||
11 --- 128
|
||||
11 --- 129
|
||||
11 --- 130
|
||||
11 --- 131
|
||||
11 --- 132
|
||||
11 --- 133
|
||||
11 --- 134
|
||||
11 --- 135
|
||||
11 --- 136
|
||||
11 --- 137
|
||||
11 --- 138
|
||||
11 --- 139
|
||||
11 --- 140
|
||||
11 --- 141
|
||||
11 --- 142
|
||||
11 --- 143
|
||||
11 --- 144
|
||||
11 --- 145
|
||||
11 --- 146
|
||||
11 --- 147
|
||||
11 --- 148
|
||||
11 --- 149
|
||||
11 --- 150
|
||||
11 --- 151
|
||||
11 --- 152
|
||||
11 --- 153
|
||||
11 --- 154
|
||||
11 --- 155
|
||||
11 --- 156
|
||||
11 --- 157
|
||||
11 --- 158
|
||||
11 --- 159
|
||||
11 --- 160
|
||||
11 --- 161
|
||||
11 --- 162
|
||||
11 --- 163
|
||||
11 --- 164
|
||||
11 --- 165
|
||||
11 --- 166
|
||||
11 --- 167
|
||||
11 --- 168
|
||||
11 --- 169
|
||||
11 --- 170
|
||||
11 --- 171
|
||||
11 --- 172
|
||||
11 --- 173
|
||||
11 --- 174
|
||||
11 --- 175
|
||||
11 --- 176
|
||||
11 --- 177
|
||||
11 --- 178
|
||||
11 --- 179
|
||||
11 --- 180
|
||||
11 --- 181
|
||||
11 --- 182
|
||||
11 --- 183
|
||||
11 --- 184
|
||||
11 --- 185
|
||||
11 --- 186
|
||||
11 --- 187
|
||||
11 --- 188
|
||||
11 --- 189
|
||||
11 --- 190
|
||||
11 --- 191
|
||||
11 --- 192
|
||||
11 --- 193
|
||||
11 --- 194
|
||||
11 --- 195
|
||||
11 --- 196
|
||||
11 --- 197
|
||||
11 --- 198
|
||||
11 --- 199
|
||||
11 --- 200
|
||||
11 --- 201
|
||||
11 --- 202
|
||||
11 --- 203
|
||||
11 --- 204
|
||||
11 --- 205
|
||||
11 --- 206
|
||||
11 --- 207
|
||||
11 --- 208
|
||||
11 --- 209
|
||||
11 --- 210
|
||||
11 --- 211
|
||||
11 --- 212
|
||||
11 --- 213
|
||||
11 --- 214
|
||||
11 --- 215
|
||||
11 ---- 217
|
||||
11 --- 216
|
||||
218 --- 219
|
||||
218 --- 220
|
||||
218 --- 221
|
||||
218 --- 222
|
||||
218 --- 223
|
||||
218 --- 224
|
||||
218 ---- 226
|
||||
218 --- 225
|
||||
219 --- 230
|
||||
219 --- 233
|
||||
219 <--x 9
|
||||
220 --- 229
|
||||
220 --- 232
|
||||
220 <--x 9
|
||||
221 --- 228
|
||||
221 --- 231
|
||||
6 --- 10
|
||||
6 --- 11
|
||||
9 --- 220
|
||||
10 <--x 7
|
||||
10 <--x 9
|
||||
11 <--x 7
|
||||
12 --- 13
|
||||
13 --- 14
|
||||
13 --- 15
|
||||
13 --- 16
|
||||
13 --- 17
|
||||
13 --- 18
|
||||
13 --- 19
|
||||
13 --- 20
|
||||
13 --- 21
|
||||
13 --- 22
|
||||
13 --- 23
|
||||
13 --- 24
|
||||
13 --- 25
|
||||
13 --- 26
|
||||
13 --- 27
|
||||
13 --- 28
|
||||
13 --- 29
|
||||
13 --- 30
|
||||
13 --- 31
|
||||
13 --- 32
|
||||
13 --- 33
|
||||
13 --- 34
|
||||
13 --- 35
|
||||
13 --- 36
|
||||
13 --- 37
|
||||
13 --- 38
|
||||
13 --- 39
|
||||
13 --- 40
|
||||
13 --- 41
|
||||
13 --- 42
|
||||
13 --- 43
|
||||
13 --- 44
|
||||
13 --- 45
|
||||
13 --- 46
|
||||
13 --- 47
|
||||
13 --- 48
|
||||
13 --- 49
|
||||
13 --- 50
|
||||
13 --- 51
|
||||
13 --- 52
|
||||
13 --- 53
|
||||
13 --- 54
|
||||
13 --- 55
|
||||
13 --- 56
|
||||
13 --- 57
|
||||
13 --- 58
|
||||
13 --- 59
|
||||
13 --- 60
|
||||
13 --- 61
|
||||
13 --- 62
|
||||
13 --- 63
|
||||
13 --- 64
|
||||
13 --- 65
|
||||
13 --- 66
|
||||
13 --- 67
|
||||
13 --- 68
|
||||
13 --- 69
|
||||
13 --- 70
|
||||
13 --- 71
|
||||
13 --- 72
|
||||
13 --- 73
|
||||
13 --- 74
|
||||
13 --- 75
|
||||
13 --- 76
|
||||
13 --- 77
|
||||
13 --- 78
|
||||
13 --- 79
|
||||
13 --- 80
|
||||
13 --- 81
|
||||
13 --- 82
|
||||
13 --- 83
|
||||
13 --- 84
|
||||
13 --- 85
|
||||
13 --- 86
|
||||
13 --- 87
|
||||
13 --- 88
|
||||
13 --- 89
|
||||
13 --- 90
|
||||
13 --- 91
|
||||
13 --- 92
|
||||
13 --- 93
|
||||
13 --- 94
|
||||
13 --- 95
|
||||
13 --- 96
|
||||
13 --- 97
|
||||
13 --- 98
|
||||
13 --- 99
|
||||
13 --- 100
|
||||
13 --- 101
|
||||
13 --- 102
|
||||
13 --- 103
|
||||
13 --- 104
|
||||
13 --- 105
|
||||
13 --- 106
|
||||
13 --- 107
|
||||
13 --- 108
|
||||
13 --- 109
|
||||
13 --- 110
|
||||
13 --- 111
|
||||
13 --- 112
|
||||
13 --- 113
|
||||
13 --- 114
|
||||
13 --- 115
|
||||
13 --- 116
|
||||
13 --- 117
|
||||
13 --- 118
|
||||
13 --- 119
|
||||
13 --- 120
|
||||
13 --- 121
|
||||
13 --- 122
|
||||
13 --- 123
|
||||
13 --- 124
|
||||
13 --- 125
|
||||
13 --- 126
|
||||
13 --- 127
|
||||
13 --- 128
|
||||
13 --- 129
|
||||
13 --- 130
|
||||
13 --- 131
|
||||
13 --- 132
|
||||
13 --- 133
|
||||
13 --- 134
|
||||
13 --- 135
|
||||
13 --- 136
|
||||
13 --- 137
|
||||
13 --- 138
|
||||
13 --- 139
|
||||
13 --- 140
|
||||
13 --- 141
|
||||
13 --- 142
|
||||
13 --- 143
|
||||
13 --- 144
|
||||
13 --- 145
|
||||
13 --- 146
|
||||
13 --- 147
|
||||
13 --- 148
|
||||
13 --- 149
|
||||
13 --- 150
|
||||
13 --- 151
|
||||
13 --- 152
|
||||
13 --- 153
|
||||
13 --- 154
|
||||
13 --- 155
|
||||
13 --- 156
|
||||
13 --- 157
|
||||
13 --- 158
|
||||
13 --- 159
|
||||
13 --- 160
|
||||
13 --- 161
|
||||
13 --- 162
|
||||
13 --- 163
|
||||
13 --- 164
|
||||
13 --- 165
|
||||
13 --- 166
|
||||
13 --- 167
|
||||
13 --- 168
|
||||
13 --- 169
|
||||
13 --- 170
|
||||
13 --- 171
|
||||
13 --- 172
|
||||
13 --- 173
|
||||
13 --- 174
|
||||
13 --- 175
|
||||
13 --- 176
|
||||
13 --- 177
|
||||
13 --- 178
|
||||
13 --- 179
|
||||
13 --- 180
|
||||
13 --- 181
|
||||
13 --- 182
|
||||
13 --- 183
|
||||
13 --- 184
|
||||
13 --- 185
|
||||
13 --- 186
|
||||
13 --- 187
|
||||
13 --- 188
|
||||
13 --- 189
|
||||
13 --- 190
|
||||
13 --- 191
|
||||
13 --- 192
|
||||
13 --- 193
|
||||
13 --- 194
|
||||
13 --- 195
|
||||
13 --- 196
|
||||
13 --- 197
|
||||
13 --- 198
|
||||
13 --- 199
|
||||
13 --- 200
|
||||
13 --- 201
|
||||
13 --- 202
|
||||
13 --- 203
|
||||
13 --- 204
|
||||
13 --- 205
|
||||
13 --- 206
|
||||
13 --- 207
|
||||
13 --- 208
|
||||
13 --- 209
|
||||
13 --- 210
|
||||
13 --- 211
|
||||
13 --- 212
|
||||
13 --- 213
|
||||
13 --- 214
|
||||
13 --- 215
|
||||
13 --- 216
|
||||
13 --- 217
|
||||
13 ---- 219
|
||||
13 --- 218
|
||||
220 --- 221
|
||||
220 --- 222
|
||||
220 --- 223
|
||||
220 --- 224
|
||||
220 --- 225
|
||||
220 --- 226
|
||||
220 ---- 228
|
||||
220 --- 227
|
||||
221 --- 232
|
||||
221 --- 239
|
||||
221 --- 240
|
||||
221 <--x 9
|
||||
223 --- 227
|
||||
222 --- 231
|
||||
222 --- 237
|
||||
222 --- 238
|
||||
222 <--x 9
|
||||
223 --- 230
|
||||
223 --- 235
|
||||
223 --- 236
|
||||
223 <--x 9
|
||||
226 --- 227
|
||||
226 --- 228
|
||||
226 --- 229
|
||||
226 --- 230
|
||||
226 --- 231
|
||||
226 --- 232
|
||||
226 --- 233
|
||||
231 <--x 228
|
||||
231 <--x 8
|
||||
232 <--x 229
|
||||
232 <--x 8
|
||||
233 <--x 230
|
||||
225 --- 229
|
||||
225 --- 233
|
||||
225 --- 234
|
||||
225 <--x 9
|
||||
228 --- 229
|
||||
228 --- 230
|
||||
228 --- 231
|
||||
228 --- 232
|
||||
228 --- 233
|
||||
228 --- 234
|
||||
228 --- 235
|
||||
228 --- 236
|
||||
228 --- 237
|
||||
228 --- 238
|
||||
228 --- 239
|
||||
228 --- 240
|
||||
233 <--x 229
|
||||
233 <--x 8
|
||||
9 <--x 234
|
||||
234 <--x 229
|
||||
234 <--x 232
|
||||
235 <--x 230
|
||||
235 <--x 8
|
||||
236 <--x 229
|
||||
236 <--x 230
|
||||
237 <--x 231
|
||||
237 <--x 8
|
||||
238 <--x 230
|
||||
238 <--x 231
|
||||
239 <--x 232
|
||||
239 <--x 8
|
||||
240 <--x 231
|
||||
240 <--x 232
|
||||
9 <--x 241
|
||||
```
|
||||
|
@ -266,6 +266,15 @@ description: Artifact commands import_function_not_sketch.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -276,6 +285,15 @@ description: Artifact commands import_function_not_sketch.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -308,19 +326,19 @@ description: Artifact commands import_function_not_sketch.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -355,19 +373,19 @@ description: Artifact commands import_function_not_sketch.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -402,19 +420,19 @@ description: Artifact commands import_function_not_sketch.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -449,19 +467,19 @@ description: Artifact commands import_function_not_sketch.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -496,19 +514,19 @@ description: Artifact commands import_function_not_sketch.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -543,19 +561,19 @@ description: Artifact commands import_function_not_sketch.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -586,15 +604,6 @@ description: Artifact commands import_function_not_sketch.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -605,6 +614,15 @@ description: Artifact commands import_function_not_sketch.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -615,24 +633,6 @@ description: Artifact commands import_function_not_sketch.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -22,6 +22,13 @@ flowchart LR
|
||||
18[Wall]
|
||||
19[Wall]
|
||||
20[Wall]
|
||||
21["SweepEdge Adjacent"]
|
||||
22["SweepEdge Adjacent"]
|
||||
23["SweepEdge Adjacent"]
|
||||
24["SweepEdge Adjacent"]
|
||||
25["SweepEdge Adjacent"]
|
||||
26["SweepEdge Adjacent"]
|
||||
27["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -34,13 +41,21 @@ flowchart LR
|
||||
2 ---- 12
|
||||
2 --- 11
|
||||
3 --- 13
|
||||
3 x--> 21
|
||||
4 --- 14
|
||||
4 --- 21
|
||||
5 --- 15
|
||||
5 --- 22
|
||||
6 --- 16
|
||||
6 --- 23
|
||||
7 --- 17
|
||||
7 --- 24
|
||||
8 --- 18
|
||||
8 --- 25
|
||||
9 --- 19
|
||||
9 --- 26
|
||||
10 --- 20
|
||||
10 --- 27
|
||||
12 --- 13
|
||||
12 --- 14
|
||||
12 --- 15
|
||||
@ -49,11 +64,33 @@ flowchart LR
|
||||
12 --- 18
|
||||
12 --- 19
|
||||
12 --- 20
|
||||
12 <--x 3
|
||||
12 --- 21
|
||||
12 <--x 4
|
||||
12 <--x 5
|
||||
12 --- 22
|
||||
12 <--x 6
|
||||
12 --- 23
|
||||
12 <--x 7
|
||||
12 --- 24
|
||||
12 <--x 8
|
||||
12 --- 25
|
||||
12 <--x 9
|
||||
12 --- 26
|
||||
12 <--x 10
|
||||
12 --- 27
|
||||
21 <--x 13
|
||||
21 <--x 14
|
||||
22 <--x 15
|
||||
22 <--x 16
|
||||
23 <--x 16
|
||||
23 <--x 17
|
||||
24 <--x 17
|
||||
24 <--x 18
|
||||
25 <--x 18
|
||||
25 <--x 19
|
||||
26 <--x 19
|
||||
26 <--x 20
|
||||
27 <--x 20
|
||||
27 <--x 13
|
||||
```
|
||||
|
@ -205,6 +205,15 @@ description: Artifact commands import_whole.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -215,6 +224,15 @@ description: Artifact commands import_whole.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -225,24 +243,6 @@ description: Artifact commands import_whole.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -10,13 +10,22 @@ flowchart LR
|
||||
6[Wall]
|
||||
7["Cap Start"]
|
||||
8["Cap End"]
|
||||
9["SweepEdge Opposite"]
|
||||
10["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 ---- 5
|
||||
2 --- 4
|
||||
3 --- 6
|
||||
3 --- 9
|
||||
3 --- 10
|
||||
3 x--> 7
|
||||
5 --- 6
|
||||
5 --- 7
|
||||
5 --- 8
|
||||
5 --- 9
|
||||
5 --- 10
|
||||
9 <--x 6
|
||||
9 <--x 8
|
||||
10 <--x 6
|
||||
```
|
||||
|
@ -207,6 +207,15 @@ description: Artifact commands intersect_cubes.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -217,6 +226,15 @@ description: Artifact commands intersect_cubes.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -249,19 +267,19 @@ description: Artifact commands intersect_cubes.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -296,19 +314,19 @@ description: Artifact commands intersect_cubes.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -339,15 +357,6 @@ description: Artifact commands intersect_cubes.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -358,6 +367,15 @@ description: Artifact commands intersect_cubes.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -377,24 +395,6 @@ description: Artifact commands intersect_cubes.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -573,6 +573,15 @@ description: Artifact commands intersect_cubes.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -583,6 +592,15 @@ description: Artifact commands intersect_cubes.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -615,19 +633,19 @@ description: Artifact commands intersect_cubes.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -662,19 +680,19 @@ description: Artifact commands intersect_cubes.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -705,15 +723,6 @@ description: Artifact commands intersect_cubes.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -724,6 +733,15 @@ description: Artifact commands intersect_cubes.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -743,24 +761,6 @@ description: Artifact commands intersect_cubes.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -8,13 +8,13 @@ flowchart LR
|
||||
6["Segment<br>[313, 320, 0]"]
|
||||
7[Solid2d]
|
||||
end
|
||||
subgraph path19 [Path]
|
||||
19["Path<br>[58, 113, 0]"]
|
||||
20["Segment<br>[121, 177, 0]"]
|
||||
21["Segment<br>[185, 241, 0]"]
|
||||
22["Segment<br>[249, 305, 0]"]
|
||||
23["Segment<br>[313, 320, 0]"]
|
||||
24[Solid2d]
|
||||
subgraph path24 [Path]
|
||||
24["Path<br>[58, 113, 0]"]
|
||||
25["Segment<br>[121, 177, 0]"]
|
||||
26["Segment<br>[185, 241, 0]"]
|
||||
27["Segment<br>[249, 305, 0]"]
|
||||
28["Segment<br>[313, 320, 0]"]
|
||||
29[Solid2d]
|
||||
end
|
||||
1["Plane<br>[33, 50, 0]"]
|
||||
8["Sweep Extrusion<br>[328, 354, 0]"]
|
||||
@ -25,20 +25,30 @@ flowchart LR
|
||||
13["Cap Start"]
|
||||
14["Cap End"]
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
16["SweepEdge Adjacent"]
|
||||
17["SweepEdge Opposite"]
|
||||
18["Plane<br>[33, 50, 0]"]
|
||||
25["Sweep Extrusion<br>[328, 354, 0]"]
|
||||
26[Wall]
|
||||
27[Wall]
|
||||
28[Wall]
|
||||
29[Wall]
|
||||
30["Cap Start"]
|
||||
31["Cap End"]
|
||||
32["SweepEdge Opposite"]
|
||||
33["SweepEdge Opposite"]
|
||||
34["SweepEdge Opposite"]
|
||||
35["CompositeSolid Intersect<br>[448, 477, 0]"]
|
||||
18["SweepEdge Adjacent"]
|
||||
19["SweepEdge Opposite"]
|
||||
20["SweepEdge Adjacent"]
|
||||
21["SweepEdge Opposite"]
|
||||
22["SweepEdge Adjacent"]
|
||||
23["Plane<br>[33, 50, 0]"]
|
||||
30["Sweep Extrusion<br>[328, 354, 0]"]
|
||||
31[Wall]
|
||||
32[Wall]
|
||||
33[Wall]
|
||||
34[Wall]
|
||||
35["Cap Start"]
|
||||
36["Cap End"]
|
||||
37["SweepEdge Opposite"]
|
||||
38["SweepEdge Adjacent"]
|
||||
39["SweepEdge Opposite"]
|
||||
40["SweepEdge Adjacent"]
|
||||
41["SweepEdge Opposite"]
|
||||
42["SweepEdge Adjacent"]
|
||||
43["SweepEdge Opposite"]
|
||||
44["SweepEdge Adjacent"]
|
||||
45["CompositeSolid Intersect<br>[448, 477, 0]"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -47,15 +57,20 @@ flowchart LR
|
||||
2 ---- 8
|
||||
2 --- 7
|
||||
3 --- 9
|
||||
3 --- 15
|
||||
3 --- 16
|
||||
3 x--> 13
|
||||
4 --- 10
|
||||
4 --- 15
|
||||
4 --- 17
|
||||
4 --- 18
|
||||
4 x--> 13
|
||||
5 --- 11
|
||||
5 --- 16
|
||||
5 --- 19
|
||||
5 --- 20
|
||||
5 x--> 13
|
||||
6 --- 12
|
||||
6 --- 17
|
||||
6 --- 21
|
||||
6 --- 22
|
||||
6 x--> 13
|
||||
8 --- 9
|
||||
8 --- 10
|
||||
@ -66,45 +81,80 @@ flowchart LR
|
||||
8 --- 15
|
||||
8 --- 16
|
||||
8 --- 17
|
||||
15 <--x 10
|
||||
8 --- 18
|
||||
8 --- 19
|
||||
8 --- 20
|
||||
8 --- 21
|
||||
8 --- 22
|
||||
15 <--x 9
|
||||
15 <--x 14
|
||||
16 <--x 11
|
||||
16 <--x 14
|
||||
17 <--x 12
|
||||
16 <--x 9
|
||||
16 <--x 10
|
||||
17 <--x 10
|
||||
17 <--x 14
|
||||
18 --- 19
|
||||
19 --- 20
|
||||
19 --- 21
|
||||
19 --- 22
|
||||
19 --- 23
|
||||
19 ---- 25
|
||||
19 --- 24
|
||||
20 --- 26
|
||||
20 x--> 30
|
||||
21 --- 27
|
||||
21 --- 32
|
||||
21 x--> 30
|
||||
22 --- 28
|
||||
22 --- 33
|
||||
22 x--> 30
|
||||
23 --- 29
|
||||
23 --- 34
|
||||
23 x--> 30
|
||||
25 --- 26
|
||||
25 --- 27
|
||||
25 --- 28
|
||||
25 --- 29
|
||||
25 --- 30
|
||||
18 <--x 10
|
||||
18 <--x 11
|
||||
19 <--x 11
|
||||
19 <--x 14
|
||||
20 <--x 11
|
||||
20 <--x 12
|
||||
21 <--x 12
|
||||
21 <--x 14
|
||||
22 <--x 9
|
||||
22 <--x 12
|
||||
23 --- 24
|
||||
24 --- 25
|
||||
24 --- 26
|
||||
24 --- 27
|
||||
24 --- 28
|
||||
24 ---- 30
|
||||
24 --- 29
|
||||
25 --- 31
|
||||
25 --- 32
|
||||
25 --- 33
|
||||
25 --- 34
|
||||
32 <--x 27
|
||||
32 <--x 31
|
||||
33 <--x 28
|
||||
33 <--x 31
|
||||
34 <--x 29
|
||||
34 <--x 31
|
||||
2 <--x 35
|
||||
19 <--x 35
|
||||
25 --- 37
|
||||
25 --- 38
|
||||
25 x--> 35
|
||||
26 --- 32
|
||||
26 --- 39
|
||||
26 --- 40
|
||||
26 x--> 35
|
||||
27 --- 33
|
||||
27 --- 41
|
||||
27 --- 42
|
||||
27 x--> 35
|
||||
28 --- 34
|
||||
28 --- 43
|
||||
28 --- 44
|
||||
28 x--> 35
|
||||
30 --- 31
|
||||
30 --- 32
|
||||
30 --- 33
|
||||
30 --- 34
|
||||
30 --- 35
|
||||
30 --- 36
|
||||
30 --- 37
|
||||
30 --- 38
|
||||
30 --- 39
|
||||
30 --- 40
|
||||
30 --- 41
|
||||
30 --- 42
|
||||
30 --- 43
|
||||
30 --- 44
|
||||
37 <--x 31
|
||||
37 <--x 36
|
||||
38 <--x 31
|
||||
38 <--x 32
|
||||
39 <--x 32
|
||||
39 <--x 36
|
||||
40 <--x 32
|
||||
40 <--x 33
|
||||
41 <--x 33
|
||||
41 <--x 36
|
||||
42 <--x 33
|
||||
42 <--x 34
|
||||
43 <--x 34
|
||||
43 <--x 36
|
||||
44 <--x 31
|
||||
44 <--x 34
|
||||
2 <--x 45
|
||||
24 <--x 45
|
||||
```
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -143,101 +143,165 @@ flowchart LR
|
||||
137["Cap Start"]
|
||||
138["Cap End"]
|
||||
139["SweepEdge Opposite"]
|
||||
140["SweepEdge Opposite"]
|
||||
140["SweepEdge Adjacent"]
|
||||
141["SweepEdge Opposite"]
|
||||
142["SweepEdge Opposite"]
|
||||
142["SweepEdge Adjacent"]
|
||||
143["SweepEdge Opposite"]
|
||||
144["SweepEdge Opposite"]
|
||||
144["SweepEdge Adjacent"]
|
||||
145["SweepEdge Opposite"]
|
||||
146["SweepEdge Opposite"]
|
||||
146["SweepEdge Adjacent"]
|
||||
147["SweepEdge Opposite"]
|
||||
148["SweepEdge Opposite"]
|
||||
148["SweepEdge Adjacent"]
|
||||
149["SweepEdge Opposite"]
|
||||
150["SweepEdge Opposite"]
|
||||
150["SweepEdge Adjacent"]
|
||||
151["SweepEdge Opposite"]
|
||||
152["SweepEdge Opposite"]
|
||||
152["SweepEdge Adjacent"]
|
||||
153["SweepEdge Opposite"]
|
||||
154["SweepEdge Opposite"]
|
||||
154["SweepEdge Adjacent"]
|
||||
155["SweepEdge Opposite"]
|
||||
156["SweepEdge Opposite"]
|
||||
156["SweepEdge Adjacent"]
|
||||
157["SweepEdge Opposite"]
|
||||
158["SweepEdge Opposite"]
|
||||
158["SweepEdge Adjacent"]
|
||||
159["SweepEdge Opposite"]
|
||||
160["SweepEdge Opposite"]
|
||||
160["SweepEdge Adjacent"]
|
||||
161["SweepEdge Opposite"]
|
||||
162["SweepEdge Opposite"]
|
||||
162["SweepEdge Adjacent"]
|
||||
163["SweepEdge Opposite"]
|
||||
164["SweepEdge Opposite"]
|
||||
164["SweepEdge Adjacent"]
|
||||
165["SweepEdge Opposite"]
|
||||
166["SweepEdge Opposite"]
|
||||
166["SweepEdge Adjacent"]
|
||||
167["SweepEdge Opposite"]
|
||||
168["SweepEdge Opposite"]
|
||||
168["SweepEdge Adjacent"]
|
||||
169["SweepEdge Opposite"]
|
||||
170["SweepEdge Opposite"]
|
||||
170["SweepEdge Adjacent"]
|
||||
171["SweepEdge Opposite"]
|
||||
172["SweepEdge Opposite"]
|
||||
172["SweepEdge Adjacent"]
|
||||
173["SweepEdge Opposite"]
|
||||
174["SweepEdge Opposite"]
|
||||
174["SweepEdge Adjacent"]
|
||||
175["SweepEdge Opposite"]
|
||||
176["SweepEdge Opposite"]
|
||||
176["SweepEdge Adjacent"]
|
||||
177["SweepEdge Opposite"]
|
||||
178["SweepEdge Opposite"]
|
||||
178["SweepEdge Adjacent"]
|
||||
179["SweepEdge Opposite"]
|
||||
180["SweepEdge Opposite"]
|
||||
180["SweepEdge Adjacent"]
|
||||
181["SweepEdge Opposite"]
|
||||
182["SweepEdge Opposite"]
|
||||
182["SweepEdge Adjacent"]
|
||||
183["SweepEdge Opposite"]
|
||||
184["SweepEdge Opposite"]
|
||||
184["SweepEdge Adjacent"]
|
||||
185["SweepEdge Opposite"]
|
||||
186["SweepEdge Opposite"]
|
||||
186["SweepEdge Adjacent"]
|
||||
187["SweepEdge Opposite"]
|
||||
188["SweepEdge Opposite"]
|
||||
188["SweepEdge Adjacent"]
|
||||
189["SweepEdge Opposite"]
|
||||
190["SweepEdge Opposite"]
|
||||
190["SweepEdge Adjacent"]
|
||||
191["SweepEdge Opposite"]
|
||||
192["SweepEdge Opposite"]
|
||||
192["SweepEdge Adjacent"]
|
||||
193["SweepEdge Opposite"]
|
||||
194["SweepEdge Opposite"]
|
||||
194["SweepEdge Adjacent"]
|
||||
195["SweepEdge Opposite"]
|
||||
196["SweepEdge Opposite"]
|
||||
196["SweepEdge Adjacent"]
|
||||
197["SweepEdge Opposite"]
|
||||
198["SweepEdge Opposite"]
|
||||
198["SweepEdge Adjacent"]
|
||||
199["SweepEdge Opposite"]
|
||||
200["SweepEdge Opposite"]
|
||||
200["SweepEdge Adjacent"]
|
||||
201["SweepEdge Opposite"]
|
||||
202["SweepEdge Adjacent"]
|
||||
203["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
204["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
205["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
206["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
207["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
208["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
209["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
210["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
211["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
212["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
213["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
214["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
215["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
216["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
217["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
218["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
219["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
220["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
221["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
222["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
223["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
224["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
225["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
226["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
227["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
228["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
229["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
230["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
231["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
232["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
233["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
234["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
203["SweepEdge Opposite"]
|
||||
204["SweepEdge Adjacent"]
|
||||
205["SweepEdge Opposite"]
|
||||
206["SweepEdge Adjacent"]
|
||||
207["SweepEdge Opposite"]
|
||||
208["SweepEdge Adjacent"]
|
||||
209["SweepEdge Opposite"]
|
||||
210["SweepEdge Adjacent"]
|
||||
211["SweepEdge Opposite"]
|
||||
212["SweepEdge Adjacent"]
|
||||
213["SweepEdge Opposite"]
|
||||
214["SweepEdge Adjacent"]
|
||||
215["SweepEdge Opposite"]
|
||||
216["SweepEdge Adjacent"]
|
||||
217["SweepEdge Opposite"]
|
||||
218["SweepEdge Adjacent"]
|
||||
219["SweepEdge Opposite"]
|
||||
220["SweepEdge Adjacent"]
|
||||
221["SweepEdge Opposite"]
|
||||
222["SweepEdge Adjacent"]
|
||||
223["SweepEdge Opposite"]
|
||||
224["SweepEdge Adjacent"]
|
||||
225["SweepEdge Opposite"]
|
||||
226["SweepEdge Adjacent"]
|
||||
227["SweepEdge Opposite"]
|
||||
228["SweepEdge Adjacent"]
|
||||
229["SweepEdge Opposite"]
|
||||
230["SweepEdge Adjacent"]
|
||||
231["SweepEdge Opposite"]
|
||||
232["SweepEdge Adjacent"]
|
||||
233["SweepEdge Opposite"]
|
||||
234["SweepEdge Adjacent"]
|
||||
235["SweepEdge Opposite"]
|
||||
236["SweepEdge Adjacent"]
|
||||
237["SweepEdge Opposite"]
|
||||
238["SweepEdge Adjacent"]
|
||||
239["SweepEdge Opposite"]
|
||||
240["SweepEdge Adjacent"]
|
||||
241["SweepEdge Opposite"]
|
||||
242["SweepEdge Adjacent"]
|
||||
243["SweepEdge Opposite"]
|
||||
244["SweepEdge Adjacent"]
|
||||
245["SweepEdge Opposite"]
|
||||
246["SweepEdge Adjacent"]
|
||||
247["SweepEdge Opposite"]
|
||||
248["SweepEdge Adjacent"]
|
||||
249["SweepEdge Opposite"]
|
||||
250["SweepEdge Adjacent"]
|
||||
251["SweepEdge Opposite"]
|
||||
252["SweepEdge Adjacent"]
|
||||
253["SweepEdge Opposite"]
|
||||
254["SweepEdge Adjacent"]
|
||||
255["SweepEdge Opposite"]
|
||||
256["SweepEdge Adjacent"]
|
||||
257["SweepEdge Opposite"]
|
||||
258["SweepEdge Adjacent"]
|
||||
259["SweepEdge Opposite"]
|
||||
260["SweepEdge Adjacent"]
|
||||
261["SweepEdge Opposite"]
|
||||
262["SweepEdge Adjacent"]
|
||||
263["SweepEdge Opposite"]
|
||||
264["SweepEdge Adjacent"]
|
||||
265["SweepEdge Opposite"]
|
||||
266["SweepEdge Adjacent"]
|
||||
267["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
268["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
269["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
270["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
271["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
272["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
273["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
274["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
275["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
276["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
277["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
278["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
279["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
280["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
281["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
282["EdgeCut Fillet<br>[5104, 5809, 0]"]
|
||||
283["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
284["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
285["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
286["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
287["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
288["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
289["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
290["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
291["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
292["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
293["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
294["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
295["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
296["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
297["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
298["EdgeCut Fillet<br>[5817, 6521, 0]"]
|
||||
1 --- 2
|
||||
1 --- 69
|
||||
2 --- 3
|
||||
@ -308,196 +372,260 @@ flowchart LR
|
||||
2 ---- 72
|
||||
2 --- 68
|
||||
3 --- 73
|
||||
3 --- 139
|
||||
3 --- 140
|
||||
3 x--> 137
|
||||
4 --- 74
|
||||
4 --- 139
|
||||
4 --- 141
|
||||
4 --- 142
|
||||
4 x--> 137
|
||||
5 --- 75
|
||||
5 --- 140
|
||||
5 --- 143
|
||||
5 --- 144
|
||||
5 x--> 137
|
||||
6 --- 76
|
||||
6 --- 141
|
||||
6 --- 145
|
||||
6 --- 146
|
||||
6 x--> 137
|
||||
7 --- 77
|
||||
7 --- 142
|
||||
7 --- 147
|
||||
7 --- 148
|
||||
7 x--> 137
|
||||
8 --- 78
|
||||
8 --- 143
|
||||
8 --- 149
|
||||
8 --- 150
|
||||
8 x--> 137
|
||||
9 --- 79
|
||||
9 --- 144
|
||||
9 --- 202
|
||||
9 --- 151
|
||||
9 --- 152
|
||||
9 x--> 137
|
||||
10 --- 80
|
||||
10 --- 145
|
||||
10 --- 153
|
||||
10 --- 154
|
||||
10 x--> 137
|
||||
11 --- 81
|
||||
11 --- 146
|
||||
11 --- 155
|
||||
11 --- 156
|
||||
11 x--> 137
|
||||
12 --- 82
|
||||
12 --- 147
|
||||
12 --- 157
|
||||
12 --- 158
|
||||
12 x--> 137
|
||||
13 --- 83
|
||||
13 --- 148
|
||||
13 --- 159
|
||||
13 --- 160
|
||||
13 x--> 137
|
||||
14 --- 84
|
||||
14 --- 149
|
||||
14 --- 161
|
||||
14 --- 162
|
||||
14 x--> 137
|
||||
15 --- 85
|
||||
15 --- 150
|
||||
15 --- 163
|
||||
15 --- 164
|
||||
15 x--> 137
|
||||
16 --- 86
|
||||
16 --- 151
|
||||
16 --- 165
|
||||
16 --- 166
|
||||
16 x--> 137
|
||||
17 --- 87
|
||||
17 --- 152
|
||||
17 --- 167
|
||||
17 --- 168
|
||||
17 x--> 137
|
||||
18 --- 88
|
||||
18 --- 153
|
||||
18 --- 169
|
||||
18 --- 170
|
||||
18 x--> 137
|
||||
19 --- 89
|
||||
19 --- 154
|
||||
19 --- 171
|
||||
19 --- 172
|
||||
19 x--> 137
|
||||
20 --- 90
|
||||
20 --- 155
|
||||
20 --- 173
|
||||
20 --- 174
|
||||
20 x--> 137
|
||||
21 --- 91
|
||||
21 --- 156
|
||||
21 --- 175
|
||||
21 --- 176
|
||||
21 x--> 137
|
||||
22 --- 92
|
||||
22 --- 157
|
||||
22 --- 177
|
||||
22 --- 178
|
||||
22 x--> 137
|
||||
23 --- 93
|
||||
23 --- 158
|
||||
23 --- 179
|
||||
23 --- 180
|
||||
23 x--> 137
|
||||
24 --- 94
|
||||
24 --- 159
|
||||
24 --- 181
|
||||
24 --- 182
|
||||
24 x--> 137
|
||||
25 --- 95
|
||||
25 --- 160
|
||||
25 --- 183
|
||||
25 --- 184
|
||||
25 x--> 137
|
||||
26 --- 96
|
||||
26 --- 161
|
||||
26 --- 185
|
||||
26 --- 186
|
||||
26 x--> 137
|
||||
27 --- 97
|
||||
27 --- 162
|
||||
27 --- 187
|
||||
27 --- 188
|
||||
27 x--> 137
|
||||
28 --- 98
|
||||
28 --- 163
|
||||
28 --- 189
|
||||
28 --- 190
|
||||
28 x--> 137
|
||||
29 --- 99
|
||||
29 --- 164
|
||||
29 --- 191
|
||||
29 --- 192
|
||||
29 x--> 137
|
||||
30 --- 100
|
||||
30 --- 165
|
||||
30 --- 193
|
||||
30 --- 194
|
||||
30 x--> 137
|
||||
31 --- 101
|
||||
31 --- 166
|
||||
31 --- 195
|
||||
31 --- 196
|
||||
31 x--> 137
|
||||
32 --- 102
|
||||
32 --- 167
|
||||
32 --- 197
|
||||
32 --- 198
|
||||
32 x--> 137
|
||||
33 --- 103
|
||||
33 --- 168
|
||||
33 --- 199
|
||||
33 --- 200
|
||||
33 x--> 137
|
||||
34 --- 104
|
||||
34 --- 169
|
||||
34 --- 201
|
||||
34 --- 202
|
||||
34 x--> 137
|
||||
35 --- 105
|
||||
35 --- 170
|
||||
35 --- 203
|
||||
35 --- 204
|
||||
35 x--> 137
|
||||
36 --- 106
|
||||
36 --- 171
|
||||
36 --- 205
|
||||
36 --- 206
|
||||
36 x--> 137
|
||||
37 --- 107
|
||||
37 --- 172
|
||||
37 --- 207
|
||||
37 --- 208
|
||||
37 x--> 137
|
||||
38 --- 108
|
||||
38 --- 173
|
||||
38 --- 209
|
||||
38 --- 210
|
||||
38 x--> 137
|
||||
39 --- 109
|
||||
39 --- 174
|
||||
39 --- 211
|
||||
39 --- 212
|
||||
39 x--> 137
|
||||
40 --- 110
|
||||
40 --- 175
|
||||
40 --- 213
|
||||
40 --- 214
|
||||
40 x--> 137
|
||||
41 --- 111
|
||||
41 --- 176
|
||||
41 --- 215
|
||||
41 --- 216
|
||||
41 x--> 137
|
||||
42 --- 112
|
||||
42 --- 177
|
||||
42 --- 217
|
||||
42 --- 218
|
||||
42 x--> 137
|
||||
43 --- 113
|
||||
43 --- 178
|
||||
43 --- 219
|
||||
43 --- 220
|
||||
43 x--> 137
|
||||
44 --- 114
|
||||
44 --- 179
|
||||
44 --- 221
|
||||
44 --- 222
|
||||
44 x--> 137
|
||||
45 --- 115
|
||||
45 --- 180
|
||||
45 --- 223
|
||||
45 --- 224
|
||||
45 x--> 137
|
||||
46 --- 116
|
||||
46 --- 181
|
||||
46 --- 225
|
||||
46 --- 226
|
||||
46 x--> 137
|
||||
47 --- 117
|
||||
47 --- 182
|
||||
47 --- 227
|
||||
47 --- 228
|
||||
47 x--> 137
|
||||
48 --- 118
|
||||
48 --- 183
|
||||
48 --- 229
|
||||
48 --- 230
|
||||
48 x--> 137
|
||||
49 --- 119
|
||||
49 --- 184
|
||||
49 --- 231
|
||||
49 --- 232
|
||||
49 x--> 137
|
||||
50 --- 120
|
||||
50 --- 185
|
||||
50 --- 233
|
||||
50 --- 234
|
||||
50 x--> 137
|
||||
51 --- 121
|
||||
51 --- 186
|
||||
51 --- 235
|
||||
51 --- 236
|
||||
51 x--> 137
|
||||
52 --- 122
|
||||
52 --- 187
|
||||
52 --- 237
|
||||
52 --- 238
|
||||
52 x--> 137
|
||||
53 --- 123
|
||||
53 --- 188
|
||||
53 --- 239
|
||||
53 --- 240
|
||||
53 x--> 137
|
||||
54 --- 124
|
||||
54 --- 189
|
||||
54 --- 241
|
||||
54 --- 242
|
||||
54 x--> 137
|
||||
55 --- 125
|
||||
55 --- 190
|
||||
55 --- 243
|
||||
55 --- 244
|
||||
55 x--> 137
|
||||
56 --- 126
|
||||
56 --- 191
|
||||
56 --- 245
|
||||
56 --- 246
|
||||
56 x--> 137
|
||||
57 --- 127
|
||||
57 --- 192
|
||||
57 --- 247
|
||||
57 --- 248
|
||||
57 x--> 137
|
||||
58 --- 128
|
||||
58 --- 193
|
||||
58 --- 249
|
||||
58 --- 250
|
||||
58 x--> 137
|
||||
59 --- 129
|
||||
59 --- 194
|
||||
59 --- 251
|
||||
59 --- 252
|
||||
59 x--> 137
|
||||
60 --- 130
|
||||
60 --- 195
|
||||
60 --- 253
|
||||
60 --- 254
|
||||
60 x--> 137
|
||||
61 --- 131
|
||||
61 --- 196
|
||||
61 --- 255
|
||||
61 --- 256
|
||||
61 x--> 137
|
||||
62 --- 132
|
||||
62 --- 197
|
||||
62 --- 257
|
||||
62 --- 258
|
||||
62 x--> 137
|
||||
63 --- 133
|
||||
63 --- 198
|
||||
63 --- 259
|
||||
63 --- 260
|
||||
63 x--> 137
|
||||
64 --- 134
|
||||
64 --- 199
|
||||
64 --- 261
|
||||
64 --- 262
|
||||
64 x--> 137
|
||||
65 --- 135
|
||||
65 --- 200
|
||||
65 --- 263
|
||||
65 --- 264
|
||||
65 x--> 137
|
||||
66 --- 136
|
||||
66 --- 201
|
||||
66 --- 265
|
||||
66 --- 266
|
||||
66 x--> 137
|
||||
69 --- 70
|
||||
69 --- 71
|
||||
@ -631,131 +759,292 @@ flowchart LR
|
||||
72 --- 200
|
||||
72 --- 201
|
||||
72 --- 202
|
||||
139 <--x 74
|
||||
72 --- 203
|
||||
72 --- 204
|
||||
72 --- 205
|
||||
72 --- 206
|
||||
72 --- 207
|
||||
72 --- 208
|
||||
72 --- 209
|
||||
72 --- 210
|
||||
72 --- 211
|
||||
72 --- 212
|
||||
72 --- 213
|
||||
72 --- 214
|
||||
72 --- 215
|
||||
72 --- 216
|
||||
72 --- 217
|
||||
72 --- 218
|
||||
72 --- 219
|
||||
72 --- 220
|
||||
72 --- 221
|
||||
72 --- 222
|
||||
72 --- 223
|
||||
72 --- 224
|
||||
72 --- 225
|
||||
72 --- 226
|
||||
72 --- 227
|
||||
72 --- 228
|
||||
72 --- 229
|
||||
72 --- 230
|
||||
72 --- 231
|
||||
72 --- 232
|
||||
72 --- 233
|
||||
72 --- 234
|
||||
72 --- 235
|
||||
72 --- 236
|
||||
72 --- 237
|
||||
72 --- 238
|
||||
72 --- 239
|
||||
72 --- 240
|
||||
72 --- 241
|
||||
72 --- 242
|
||||
72 --- 243
|
||||
72 --- 244
|
||||
72 --- 245
|
||||
72 --- 246
|
||||
72 --- 247
|
||||
72 --- 248
|
||||
72 --- 249
|
||||
72 --- 250
|
||||
72 --- 251
|
||||
72 --- 252
|
||||
72 --- 253
|
||||
72 --- 254
|
||||
72 --- 255
|
||||
72 --- 256
|
||||
72 --- 257
|
||||
72 --- 258
|
||||
72 --- 259
|
||||
72 --- 260
|
||||
72 --- 261
|
||||
72 --- 262
|
||||
72 --- 263
|
||||
72 --- 264
|
||||
72 --- 265
|
||||
72 --- 266
|
||||
139 <--x 73
|
||||
139 <--x 138
|
||||
140 <--x 75
|
||||
140 <--x 138
|
||||
141 <--x 76
|
||||
140 <--x 73
|
||||
140 <--x 74
|
||||
141 <--x 74
|
||||
141 <--x 138
|
||||
142 <--x 77
|
||||
142 <--x 138
|
||||
143 <--x 78
|
||||
142 <--x 74
|
||||
142 <--x 75
|
||||
143 <--x 75
|
||||
143 <--x 138
|
||||
144 <--x 79
|
||||
144 <--x 138
|
||||
145 <--x 80
|
||||
144 <--x 75
|
||||
144 <--x 76
|
||||
145 <--x 76
|
||||
145 <--x 138
|
||||
146 <--x 81
|
||||
146 <--x 138
|
||||
147 <--x 82
|
||||
146 <--x 76
|
||||
146 <--x 77
|
||||
147 <--x 77
|
||||
147 <--x 138
|
||||
148 <--x 83
|
||||
148 <--x 138
|
||||
149 <--x 84
|
||||
149 <--x 78
|
||||
149 <--x 138
|
||||
150 <--x 85
|
||||
150 <--x 138
|
||||
151 <--x 86
|
||||
151 <--x 79
|
||||
151 <--x 138
|
||||
152 <--x 87
|
||||
152 <--x 138
|
||||
153 <--x 88
|
||||
153 <--x 80
|
||||
153 <--x 138
|
||||
154 <--x 89
|
||||
154 <--x 138
|
||||
155 <--x 90
|
||||
155 <--x 81
|
||||
155 <--x 138
|
||||
156 <--x 91
|
||||
156 <--x 138
|
||||
157 <--x 92
|
||||
157 <--x 82
|
||||
157 <--x 138
|
||||
158 <--x 93
|
||||
158 <--x 138
|
||||
159 <--x 94
|
||||
159 <--x 83
|
||||
159 <--x 138
|
||||
160 <--x 95
|
||||
160 <--x 138
|
||||
161 <--x 96
|
||||
161 <--x 84
|
||||
161 <--x 138
|
||||
162 <--x 97
|
||||
162 <--x 138
|
||||
163 <--x 98
|
||||
163 <--x 85
|
||||
163 <--x 138
|
||||
164 <--x 99
|
||||
164 <--x 138
|
||||
165 <--x 100
|
||||
164 <--x 85
|
||||
164 <--x 86
|
||||
165 <--x 86
|
||||
165 <--x 138
|
||||
166 <--x 101
|
||||
166 <--x 138
|
||||
167 <--x 102
|
||||
166 <--x 86
|
||||
166 <--x 87
|
||||
167 <--x 87
|
||||
167 <--x 138
|
||||
168 <--x 103
|
||||
168 <--x 138
|
||||
169 <--x 104
|
||||
168 <--x 87
|
||||
168 <--x 88
|
||||
169 <--x 88
|
||||
169 <--x 138
|
||||
170 <--x 105
|
||||
170 <--x 138
|
||||
171 <--x 106
|
||||
170 <--x 88
|
||||
170 <--x 89
|
||||
171 <--x 89
|
||||
171 <--x 138
|
||||
172 <--x 107
|
||||
172 <--x 138
|
||||
173 <--x 108
|
||||
172 <--x 89
|
||||
172 <--x 90
|
||||
173 <--x 90
|
||||
173 <--x 138
|
||||
174 <--x 109
|
||||
174 <--x 138
|
||||
175 <--x 110
|
||||
174 <--x 90
|
||||
174 <--x 91
|
||||
175 <--x 91
|
||||
175 <--x 138
|
||||
176 <--x 111
|
||||
176 <--x 138
|
||||
177 <--x 112
|
||||
176 <--x 91
|
||||
176 <--x 92
|
||||
177 <--x 92
|
||||
177 <--x 138
|
||||
178 <--x 113
|
||||
178 <--x 138
|
||||
179 <--x 114
|
||||
178 <--x 92
|
||||
178 <--x 93
|
||||
179 <--x 93
|
||||
179 <--x 138
|
||||
180 <--x 115
|
||||
180 <--x 138
|
||||
181 <--x 116
|
||||
181 <--x 94
|
||||
181 <--x 138
|
||||
182 <--x 117
|
||||
182 <--x 138
|
||||
183 <--x 118
|
||||
183 <--x 95
|
||||
183 <--x 138
|
||||
184 <--x 119
|
||||
184 <--x 138
|
||||
185 <--x 120
|
||||
185 <--x 96
|
||||
185 <--x 138
|
||||
186 <--x 121
|
||||
186 <--x 138
|
||||
187 <--x 122
|
||||
187 <--x 97
|
||||
187 <--x 138
|
||||
188 <--x 123
|
||||
188 <--x 138
|
||||
189 <--x 124
|
||||
189 <--x 98
|
||||
189 <--x 138
|
||||
190 <--x 125
|
||||
190 <--x 138
|
||||
191 <--x 126
|
||||
191 <--x 99
|
||||
191 <--x 138
|
||||
192 <--x 127
|
||||
192 <--x 138
|
||||
193 <--x 128
|
||||
193 <--x 100
|
||||
193 <--x 138
|
||||
194 <--x 129
|
||||
194 <--x 138
|
||||
195 <--x 130
|
||||
195 <--x 101
|
||||
195 <--x 138
|
||||
196 <--x 131
|
||||
196 <--x 138
|
||||
197 <--x 132
|
||||
196 <--x 101
|
||||
196 <--x 102
|
||||
197 <--x 102
|
||||
197 <--x 138
|
||||
198 <--x 133
|
||||
198 <--x 138
|
||||
199 <--x 134
|
||||
198 <--x 102
|
||||
198 <--x 103
|
||||
199 <--x 103
|
||||
199 <--x 138
|
||||
200 <--x 135
|
||||
200 <--x 138
|
||||
201 <--x 136
|
||||
200 <--x 103
|
||||
200 <--x 104
|
||||
201 <--x 104
|
||||
201 <--x 138
|
||||
202 <--x 203
|
||||
202 <--x 104
|
||||
202 <--x 105
|
||||
203 <--x 105
|
||||
203 <--x 138
|
||||
204 <--x 105
|
||||
204 <--x 106
|
||||
205 <--x 106
|
||||
205 <--x 138
|
||||
206 <--x 106
|
||||
206 <--x 107
|
||||
207 <--x 107
|
||||
207 <--x 138
|
||||
208 <--x 107
|
||||
208 <--x 108
|
||||
209 <--x 108
|
||||
209 <--x 138
|
||||
210 <--x 108
|
||||
210 <--x 109
|
||||
211 <--x 109
|
||||
211 <--x 138
|
||||
213 <--x 110
|
||||
213 <--x 138
|
||||
215 <--x 111
|
||||
215 <--x 138
|
||||
217 <--x 112
|
||||
217 <--x 138
|
||||
219 <--x 113
|
||||
219 <--x 138
|
||||
221 <--x 114
|
||||
221 <--x 138
|
||||
223 <--x 115
|
||||
223 <--x 138
|
||||
225 <--x 116
|
||||
225 <--x 138
|
||||
227 <--x 117
|
||||
227 <--x 138
|
||||
228 <--x 117
|
||||
228 <--x 118
|
||||
229 <--x 118
|
||||
229 <--x 138
|
||||
230 <--x 118
|
||||
230 <--x 119
|
||||
231 <--x 119
|
||||
231 <--x 138
|
||||
232 <--x 119
|
||||
232 <--x 120
|
||||
233 <--x 120
|
||||
233 <--x 138
|
||||
234 <--x 120
|
||||
234 <--x 121
|
||||
235 <--x 121
|
||||
235 <--x 138
|
||||
236 <--x 121
|
||||
236 <--x 122
|
||||
237 <--x 122
|
||||
237 <--x 138
|
||||
238 <--x 122
|
||||
238 <--x 123
|
||||
239 <--x 123
|
||||
239 <--x 138
|
||||
240 <--x 123
|
||||
240 <--x 124
|
||||
241 <--x 124
|
||||
241 <--x 138
|
||||
242 <--x 124
|
||||
242 <--x 125
|
||||
243 <--x 125
|
||||
243 <--x 138
|
||||
245 <--x 126
|
||||
245 <--x 138
|
||||
247 <--x 127
|
||||
247 <--x 138
|
||||
249 <--x 128
|
||||
249 <--x 138
|
||||
251 <--x 129
|
||||
251 <--x 138
|
||||
253 <--x 130
|
||||
253 <--x 138
|
||||
255 <--x 131
|
||||
255 <--x 138
|
||||
257 <--x 132
|
||||
257 <--x 138
|
||||
259 <--x 133
|
||||
259 <--x 138
|
||||
260 <--x 133
|
||||
260 <--x 134
|
||||
261 <--x 134
|
||||
261 <--x 138
|
||||
262 <--x 134
|
||||
262 <--x 135
|
||||
263 <--x 135
|
||||
263 <--x 138
|
||||
264 <--x 135
|
||||
264 <--x 136
|
||||
265 <--x 136
|
||||
265 <--x 138
|
||||
266 <--x 73
|
||||
266 <--x 136
|
||||
152 <--x 267
|
||||
154 <--x 268
|
||||
156 <--x 269
|
||||
158 <--x 270
|
||||
184 <--x 271
|
||||
186 <--x 272
|
||||
188 <--x 273
|
||||
190 <--x 274
|
||||
216 <--x 275
|
||||
218 <--x 276
|
||||
220 <--x 277
|
||||
222 <--x 278
|
||||
248 <--x 279
|
||||
250 <--x 280
|
||||
252 <--x 281
|
||||
254 <--x 282
|
||||
148 <--x 283
|
||||
150 <--x 284
|
||||
160 <--x 285
|
||||
162 <--x 286
|
||||
180 <--x 287
|
||||
182 <--x 288
|
||||
192 <--x 289
|
||||
194 <--x 290
|
||||
212 <--x 291
|
||||
214 <--x 292
|
||||
224 <--x 293
|
||||
226 <--x 294
|
||||
244 <--x 295
|
||||
246 <--x 296
|
||||
256 <--x 297
|
||||
258 <--x 298
|
||||
```
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -289,6 +289,15 @@ description: Artifact commands ball-bearing.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -299,6 +308,15 @@ description: Artifact commands ball-bearing.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -327,15 +345,6 @@ description: Artifact commands ball-bearing.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -346,6 +355,15 @@ description: Artifact commands ball-bearing.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -365,24 +383,6 @@ description: Artifact commands ball-bearing.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -526,6 +526,15 @@ description: Artifact commands ball-bearing.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -536,6 +545,15 @@ description: Artifact commands ball-bearing.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -564,15 +582,6 @@ description: Artifact commands ball-bearing.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -583,6 +592,15 @@ description: Artifact commands ball-bearing.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -602,24 +620,6 @@ description: Artifact commands ball-bearing.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -818,6 +818,15 @@ description: Artifact commands ball-bearing.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -828,6 +837,15 @@ description: Artifact commands ball-bearing.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -860,19 +878,19 @@ description: Artifact commands ball-bearing.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -907,19 +925,19 @@ description: Artifact commands ball-bearing.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -950,15 +968,6 @@ description: Artifact commands ball-bearing.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -969,6 +978,15 @@ description: Artifact commands ball-bearing.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -988,24 +1006,6 @@ description: Artifact commands ball-bearing.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1170,6 +1170,15 @@ description: Artifact commands ball-bearing.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1180,6 +1189,15 @@ description: Artifact commands ball-bearing.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1199,24 +1217,6 @@ description: Artifact commands ball-bearing.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1498,6 +1498,15 @@ description: Artifact commands ball-bearing.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1508,6 +1517,15 @@ description: Artifact commands ball-bearing.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1536,15 +1554,6 @@ description: Artifact commands ball-bearing.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1555,6 +1564,15 @@ description: Artifact commands ball-bearing.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1574,24 +1592,6 @@ description: Artifact commands ball-bearing.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -10,123 +10,178 @@ flowchart LR
|
||||
6["Segment<br>[750, 796, 0]"]
|
||||
7[Solid2d]
|
||||
end
|
||||
subgraph path13 [Path]
|
||||
13["Path<br>[980, 1036, 0]"]
|
||||
14["Segment<br>[1042, 1101, 0]"]
|
||||
15["Segment<br>[1107, 1114, 0]"]
|
||||
16[Solid2d]
|
||||
subgraph path15 [Path]
|
||||
15["Path<br>[980, 1036, 0]"]
|
||||
16["Segment<br>[1042, 1101, 0]"]
|
||||
17["Segment<br>[1107, 1114, 0]"]
|
||||
18[Solid2d]
|
||||
end
|
||||
subgraph path21 [Path]
|
||||
21["Path<br>[1484, 1617, 0]"]
|
||||
22["Segment<br>[1623, 1683, 0]"]
|
||||
23["Segment<br>[1689, 1720, 0]"]
|
||||
24["Segment<br>[1726, 1754, 0]"]
|
||||
25["Segment<br>[1760, 1767, 0]"]
|
||||
26[Solid2d]
|
||||
subgraph path24 [Path]
|
||||
24["Path<br>[1484, 1617, 0]"]
|
||||
25["Segment<br>[1623, 1683, 0]"]
|
||||
26["Segment<br>[1689, 1720, 0]"]
|
||||
27["Segment<br>[1726, 1754, 0]"]
|
||||
28["Segment<br>[1760, 1767, 0]"]
|
||||
29[Solid2d]
|
||||
end
|
||||
subgraph path33 [Path]
|
||||
33["Path<br>[2101, 2243, 0]"]
|
||||
34["Segment<br>[2101, 2243, 0]"]
|
||||
35[Solid2d]
|
||||
subgraph path40 [Path]
|
||||
40["Path<br>[2101, 2243, 0]"]
|
||||
41["Segment<br>[2101, 2243, 0]"]
|
||||
42[Solid2d]
|
||||
end
|
||||
subgraph path41 [Path]
|
||||
41["Path<br>[2637, 2690, 0]"]
|
||||
42["Segment<br>[2637, 2690, 0]"]
|
||||
43[Solid2d]
|
||||
subgraph path50 [Path]
|
||||
50["Path<br>[2637, 2690, 0]"]
|
||||
51["Segment<br>[2637, 2690, 0]"]
|
||||
52[Solid2d]
|
||||
end
|
||||
subgraph path44 [Path]
|
||||
44["Path<br>[2714, 2788, 0]"]
|
||||
45["Segment<br>[2714, 2788, 0]"]
|
||||
46[Solid2d]
|
||||
subgraph path53 [Path]
|
||||
53["Path<br>[2714, 2788, 0]"]
|
||||
54["Segment<br>[2714, 2788, 0]"]
|
||||
55[Solid2d]
|
||||
end
|
||||
1["Plane<br>[610, 657, 0]"]
|
||||
8["Sweep Extrusion<br>[848, 900, 0]"]
|
||||
9[Wall]
|
||||
10["Cap Start"]
|
||||
11["Cap End"]
|
||||
12["Plane<br>[957, 974, 0]"]
|
||||
17["Sweep Revolve<br>[1196, 1226, 0]"]
|
||||
18[Wall]
|
||||
19[Wall]
|
||||
20["Plane<br>[1461, 1478, 0]"]
|
||||
27["Sweep Revolve<br>[1809, 1839, 0]"]
|
||||
28[Wall]
|
||||
29[Wall]
|
||||
30[Wall]
|
||||
12["SweepEdge Opposite"]
|
||||
13["SweepEdge Adjacent"]
|
||||
14["Plane<br>[957, 974, 0]"]
|
||||
19["Sweep Revolve<br>[1196, 1226, 0]"]
|
||||
20[Wall]
|
||||
21[Wall]
|
||||
22["SweepEdge Adjacent"]
|
||||
23["Plane<br>[1461, 1478, 0]"]
|
||||
30["Sweep Revolve<br>[1809, 1839, 0]"]
|
||||
31[Wall]
|
||||
32["Plane<br>[2078, 2095, 0]"]
|
||||
36["Sweep Revolve<br>[2286, 2337, 0]"]
|
||||
37[Wall]
|
||||
38["Cap Start"]
|
||||
39["Cap End"]
|
||||
40["Plane<br>[2583, 2630, 0]"]
|
||||
47["Sweep Extrusion<br>[2805, 2858, 0]"]
|
||||
48[Wall]
|
||||
49["Cap Start"]
|
||||
50["Cap End"]
|
||||
51["StartSketchOnPlane<br>[596, 658, 0]"]
|
||||
52["StartSketchOnPlane<br>[2569, 2631, 0]"]
|
||||
32[Wall]
|
||||
33[Wall]
|
||||
34[Wall]
|
||||
35["SweepEdge Adjacent"]
|
||||
36["SweepEdge Adjacent"]
|
||||
37["SweepEdge Adjacent"]
|
||||
38["SweepEdge Adjacent"]
|
||||
39["Plane<br>[2078, 2095, 0]"]
|
||||
43["Sweep Revolve<br>[2286, 2337, 0]"]
|
||||
44[Wall]
|
||||
45["Cap Start"]
|
||||
46["Cap End"]
|
||||
47["SweepEdge Opposite"]
|
||||
48["SweepEdge Adjacent"]
|
||||
49["Plane<br>[2583, 2630, 0]"]
|
||||
56["Sweep Extrusion<br>[2805, 2858, 0]"]
|
||||
57[Wall]
|
||||
58["Cap Start"]
|
||||
59["Cap End"]
|
||||
60["SweepEdge Opposite"]
|
||||
61["SweepEdge Adjacent"]
|
||||
62["StartSketchOnPlane<br>[596, 658, 0]"]
|
||||
63["StartSketchOnPlane<br>[2569, 2631, 0]"]
|
||||
1 --- 2
|
||||
1 --- 5
|
||||
2 --- 3
|
||||
2 ---- 8
|
||||
2 --- 4
|
||||
3 --- 9
|
||||
3 --- 12
|
||||
3 --- 13
|
||||
3 x--> 10
|
||||
5 --- 6
|
||||
5 --- 7
|
||||
8 --- 9
|
||||
8 --- 10
|
||||
8 --- 11
|
||||
12 --- 13
|
||||
13 --- 14
|
||||
13 --- 15
|
||||
13 ---- 17
|
||||
13 --- 16
|
||||
14 --- 18
|
||||
15 --- 19
|
||||
17 --- 18
|
||||
17 --- 19
|
||||
17 <--x 15
|
||||
20 --- 21
|
||||
21 --- 22
|
||||
21 --- 23
|
||||
21 --- 24
|
||||
21 --- 25
|
||||
21 ---- 27
|
||||
21 --- 26
|
||||
22 --- 28
|
||||
23 --- 29
|
||||
24 --- 30
|
||||
8 --- 12
|
||||
8 --- 13
|
||||
12 <--x 9
|
||||
12 <--x 11
|
||||
13 <--x 9
|
||||
14 --- 15
|
||||
15 --- 16
|
||||
15 --- 17
|
||||
15 ---- 19
|
||||
15 --- 18
|
||||
16 --- 20
|
||||
16 x--> 22
|
||||
17 --- 21
|
||||
17 --- 22
|
||||
19 --- 20
|
||||
19 --- 21
|
||||
19 <--x 16
|
||||
19 --- 22
|
||||
19 <--x 17
|
||||
22 <--x 20
|
||||
22 <--x 21
|
||||
23 --- 24
|
||||
24 --- 25
|
||||
24 --- 26
|
||||
24 --- 27
|
||||
24 --- 28
|
||||
24 ---- 30
|
||||
24 --- 29
|
||||
25 --- 31
|
||||
27 --- 28
|
||||
27 --- 29
|
||||
27 --- 30
|
||||
27 --- 31
|
||||
27 <--x 23
|
||||
27 <--x 24
|
||||
27 <--x 25
|
||||
32 --- 33
|
||||
33 --- 34
|
||||
33 ---- 36
|
||||
33 --- 35
|
||||
34 --- 37
|
||||
34 x--> 38
|
||||
36 --- 37
|
||||
36 --- 38
|
||||
36 --- 39
|
||||
25 --- 35
|
||||
26 --- 32
|
||||
26 --- 36
|
||||
27 --- 33
|
||||
27 --- 37
|
||||
28 --- 34
|
||||
28 --- 38
|
||||
30 --- 31
|
||||
30 --- 32
|
||||
30 --- 33
|
||||
30 --- 34
|
||||
30 <--x 25
|
||||
30 --- 35
|
||||
30 <--x 26
|
||||
30 --- 36
|
||||
30 <--x 27
|
||||
30 --- 37
|
||||
30 <--x 28
|
||||
30 --- 38
|
||||
35 <--x 31
|
||||
35 <--x 32
|
||||
36 <--x 32
|
||||
36 <--x 33
|
||||
37 <--x 33
|
||||
37 <--x 34
|
||||
38 <--x 34
|
||||
38 <--x 31
|
||||
39 --- 40
|
||||
40 --- 41
|
||||
40 --- 44
|
||||
41 --- 42
|
||||
41 ---- 47
|
||||
41 --- 43
|
||||
42 --- 48
|
||||
42 x--> 49
|
||||
44 --- 45
|
||||
44 --- 46
|
||||
47 --- 48
|
||||
47 --- 49
|
||||
47 --- 50
|
||||
1 <--x 51
|
||||
40 <--x 52
|
||||
40 ---- 43
|
||||
40 --- 42
|
||||
41 --- 44
|
||||
41 --- 47
|
||||
41 --- 48
|
||||
41 x--> 45
|
||||
43 --- 44
|
||||
43 --- 45
|
||||
43 --- 46
|
||||
43 --- 47
|
||||
43 --- 48
|
||||
47 <--x 44
|
||||
47 <--x 46
|
||||
48 <--x 44
|
||||
49 --- 50
|
||||
49 --- 53
|
||||
50 --- 51
|
||||
50 ---- 56
|
||||
50 --- 52
|
||||
51 --- 57
|
||||
51 --- 60
|
||||
51 --- 61
|
||||
51 x--> 58
|
||||
53 --- 54
|
||||
53 --- 55
|
||||
56 --- 57
|
||||
56 --- 58
|
||||
56 --- 59
|
||||
56 --- 60
|
||||
56 --- 61
|
||||
60 <--x 57
|
||||
60 <--x 59
|
||||
61 <--x 57
|
||||
1 <--x 62
|
||||
49 <--x 63
|
||||
```
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -240,6 +240,15 @@ description: Artifact commands bottle.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -250,6 +259,15 @@ description: Artifact commands bottle.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -282,19 +300,19 @@ description: Artifact commands bottle.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -329,19 +347,19 @@ description: Artifact commands bottle.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -376,19 +394,19 @@ description: Artifact commands bottle.kcl
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_opposite_edge",
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]",
|
||||
"face_id": "[uuid]"
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -419,15 +437,6 @@ description: Artifact commands bottle.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -438,6 +447,15 @@ description: Artifact commands bottle.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -457,24 +475,6 @@ description: Artifact commands bottle.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -594,6 +594,15 @@ description: Artifact commands bottle.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -604,6 +613,15 @@ description: Artifact commands bottle.kcl
|
||||
"face_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -623,24 +641,6 @@ description: Artifact commands bottle.kcl
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "solid3d_get_all_edge_faces",
|
||||
"object_id": "[uuid]",
|
||||
"edge_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
|
@ -19,7 +19,9 @@ flowchart LR
|
||||
13["Sweep Extrusion<br>[794, 821, 0]"]
|
||||
14[Wall]
|
||||
15["Cap End"]
|
||||
16["StartSketchOnFace<br>[695, 732, 0]"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Adjacent"]
|
||||
18["StartSketchOnFace<br>[695, 732, 0]"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
2 --- 4
|
||||
@ -32,8 +34,15 @@ flowchart LR
|
||||
10 ---- 13
|
||||
10 --- 12
|
||||
11 --- 14
|
||||
11 --- 16
|
||||
11 --- 17
|
||||
11 <--x 9
|
||||
13 --- 14
|
||||
13 --- 15
|
||||
9 <--x 16
|
||||
13 --- 16
|
||||
13 --- 17
|
||||
16 <--x 14
|
||||
16 <--x 15
|
||||
17 <--x 14
|
||||
9 <--x 18
|
||||
```
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user