From 193e884e402df4979fdf3ecaae0ca28b16b103a1 Mon Sep 17 00:00:00 2001 From: IDONTSUDO Date: Fri, 20 Sep 2024 18:12:00 +0300 Subject: [PATCH] fixed errors --- ui/src/core/model/robot_model.ts | 6 ++--- .../core/repository/core_three_repository.ts | 6 ++--- .../model/editor_view.ts | 26 ++++++++++++++----- .../model/node_behavior_tree.ts | 9 +++---- .../behavior_tree_builder_store.tsx | 6 ++++- ui/tsconfig.json | 2 +- 6 files changed, 35 insertions(+), 20 deletions(-) diff --git a/ui/src/core/model/robot_model.ts b/ui/src/core/model/robot_model.ts index 215ff73..4a52bc4 100644 --- a/ui/src/core/model/robot_model.ts +++ b/ui/src/core/model/robot_model.ts @@ -13,10 +13,10 @@ export enum ToolTypes { interface RobotJoint { limit: { - lower: Number; - upper: Number; + lower: number; + upper: number; }; - angle: Number; + angle: number; name: string; } diff --git a/ui/src/core/repository/core_three_repository.ts b/ui/src/core/repository/core_three_repository.ts index 6f64378..b85c2c7 100644 --- a/ui/src/core/repository/core_three_repository.ts +++ b/ui/src/core/repository/core_three_repository.ts @@ -199,10 +199,10 @@ export class CoreThreeRepository extends TypedEvent { Object.entries(robot.joints).forEach(([name, uRDFJoint]) => { if (uRDFJoint.jointType !== "fixed") { robotModel.jointPosition.push({ - angle: uRDFJoint.angle, + angle: Number(uRDFJoint.angle), limit: { - lower: uRDFJoint.limit.lower, - upper: uRDFJoint.limit.upper, + lower: Number(uRDFJoint.limit.lower), + upper: Number(uRDFJoint.limit.upper), }, name: name, }); diff --git a/ui/src/features/behavior_tree_builder/model/editor_view.ts b/ui/src/features/behavior_tree_builder/model/editor_view.ts index c171d20..bf0aaea 100644 --- a/ui/src/features/behavior_tree_builder/model/editor_view.ts +++ b/ui/src/features/behavior_tree_builder/model/editor_view.ts @@ -43,20 +43,32 @@ export class BehaviorTreeBuilderModel { this.toXML(sortedSequence as Map, editor, area, firstNodeId, skills); this.result += ``; }); - return Result.ok(xmlFormat(this.btRootTag.replace("${bt}", this.result))); + + return this.xmlFormat(this.btRootTag, this.result); } catch (error) { + console.log(error); return Result.error("BtBuilderModel fromReteScene error"); } } - - public static getNodeLabelAtId(editor: NodeEditor, id: string, skills?: Skills) { + public static xmlFormat = (result: string, btRootTag: string): Result => { try { - if (skills?.getSkillsNames().find((el) => el.name.isEqual(editor.getNode(id).label))) { - return `Action ID="RbsAction" do="${skills.getSkillDo(editor.getNode(id).label)}" command="${ - editor.getNode(id).label + return Result.ok(xmlFormat(btRootTag.replace("${bt}", result))); + } catch (error) { + console.log(result); + console.log(btRootTag); + console.log(error); + console.log(btRootTag.replace("${bt}", result)) + return Result.error(error as string); + } + }; + public static getNodeLabelAtId(editor: NodeEditor, id: string, skills?: Skills,) { + try { + if (skills?.getSkillsNames().find((el) => el.name.isEqual(editor.getNode(id)!.label))) { + return `Action ID="RbsAction" do="${skills.getSkillDo(editor.getNode(id)!.label)}" command="${ + editor.getNode(id)?.label }" sid=${id}"`; } - return editor.getNode(id).label; + return editor.getNode(id)?.label; } catch (error) { console.log(error); } diff --git a/ui/src/features/behavior_tree_builder/model/node_behavior_tree.ts b/ui/src/features/behavior_tree_builder/model/node_behavior_tree.ts index 6b850e5..fc91857 100644 --- a/ui/src/features/behavior_tree_builder/model/node_behavior_tree.ts +++ b/ui/src/features/behavior_tree_builder/model/node_behavior_tree.ts @@ -26,9 +26,8 @@ export class NodeBehaviorTree { static fromReteScene(editor: NodeEditor, area: AreaPlugin): NodeBehaviorTree[] { const nodes = new Map(); - editor - .getNodes() - .forEach((el) => + editor.getNodes().forEach((el) => { + if (area.nodeViews.get(el.id)?.position) nodes.set( el.id, new NodeBehaviorTree( @@ -38,8 +37,8 @@ export class NodeBehaviorTree { Object.keys(el.inputs), area.nodeViews.get(el.id)!.position ) - ) - ); + ); + }); editor.getConnections().forEach((el) => nodes.overrideValue(el.target, { connectTo: el.source })); return nodes.toArray(); diff --git a/ui/src/features/behavior_tree_builder/presentation/behavior_tree_builder_store.tsx b/ui/src/features/behavior_tree_builder/presentation/behavior_tree_builder_store.tsx index 5bb17de..199cf19 100644 --- a/ui/src/features/behavior_tree_builder/presentation/behavior_tree_builder_store.tsx +++ b/ui/src/features/behavior_tree_builder/presentation/behavior_tree_builder_store.tsx @@ -211,6 +211,7 @@ export class BehaviorTreeBuilderStore extends UiDrawerFormState { + console.log(xml) this.behaviorTreeModel.skills = this.filledOutTemplates; this.behaviorTreeModel.scene = NodeBehaviorTree.fromReteScene( this.editor as NodeEditor, @@ -222,7 +223,10 @@ export class BehaviorTreeBuilderStore extends UiDrawerFormState message.error(`Дерево поведения ошибка: ${_}`) + (error) => { + message.error(`Дерево поведения ошибка: ${error}`); + console.log(error); + } ); }, async () => message.error(`Дерево поведения не заполнено`) diff --git a/ui/tsconfig.json b/ui/tsconfig.json index f4d06b3..caf6c9a 100644 --- a/ui/tsconfig.json +++ b/ui/tsconfig.json @@ -1,6 +1,6 @@ { "compilerOptions": { - "target": "es6", + "target": "es2018", "lib": ["dom", "dom.iterable", "esnext"], "allowJs": true, "skipLibCheck": true,