@windypro-rourou/dsh-eda 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +71 -119
- package/cordis.patch.yml +9 -7
- package/lib/board.js +80 -0
- package/lib/client.js +2 -2
- package/lib/index.js +339 -11
- package/lib/installer.js +4 -4
- package/lib/skill.js +138 -0
- package/package.json +3 -2
- package/skill/INDEX.md +193 -0
- package/skill/README.official.md +125 -0
- package/skill/README.zh-Hans.official.md +125 -0
- package/skill/SKILL.md +746 -0
- package/skill/format/index.md +152 -0
- package/skill/format/pcb/3d.md +166 -0
- package/skill/format/pcb/attr.md +63 -0
- package/skill/format/pcb/common.md +306 -0
- package/skill/format/pcb/component.md +132 -0
- package/skill/format/pcb/dimension.md +58 -0
- package/skill/format/pcb/index.md +17 -0
- package/skill/format/pcb/obj.md +43 -0
- package/skill/format/pcb/pad_via.md +151 -0
- package/skill/format/pcb/panel.md +64 -0
- package/skill/format/pcb/partition.md +43 -0
- package/skill/format/pcb/primitive.md +196 -0
- package/skill/format/pcb/rule.md +71 -0
- package/skill/format/pcb/shape.md +441 -0
- package/skill/format/pcb/text.md +62 -0
- package/skill/format/project/blob.md +30 -0
- package/skill/format/project/common.md +42 -0
- package/skill/format/project/group.md +62 -0
- package/skill/format/project/index.md +12 -0
- package/skill/format/project/instance.md +32 -0
- package/skill/format/project/meta.md +189 -0
- package/skill/format/project/variant.md +30 -0
- package/skill/format/schematic/attr.md +41 -0
- package/skill/format/schematic/common.md +47 -0
- package/skill/format/schematic/component.md +91 -0
- package/skill/format/schematic/index.md +14 -0
- package/skill/format/schematic/obj.md +41 -0
- package/skill/format/schematic/pin.md +59 -0
- package/skill/format/schematic/shape.md +231 -0
- package/skill/format/schematic/structure.md +53 -0
- package/skill/format/schematic/table.md +109 -0
- package/skill/format/schematic/text.md +47 -0
- package/skill/format/schematic/wire.md +132 -0
- package/skill/guide/ancillary-projects/pro-api-sdk.md +1 -0
- package/skill/guide/ancillary-projects/pro-api-types.md +5 -0
- package/skill/guide/ancillary-projects.md +10 -0
- package/skill/guide/error-handling.md +38 -0
- package/skill/guide/extension-json.md +135 -0
- package/skill/guide/extensions-marketplace.md +61 -0
- package/skill/guide/how-to-start.md +301 -0
- package/skill/guide/i18n.md +57 -0
- package/skill/guide/index.md +7 -0
- package/skill/guide/inline-frame.md +20 -0
- package/skill/guide/invoke-apis.md +81 -0
- package/skill/guide/stability.md +37 -0
- package/skill/references/_index.md +398 -0
- package/skill/references/_quick-reference.md +3028 -0
- package/skill/references/classes/DMT_Board.md +533 -0
- package/skill/references/classes/DMT_EditorControl.md +1736 -0
- package/skill/references/classes/DMT_Event.md +356 -0
- package/skill/references/classes/DMT_Folder.md +775 -0
- package/skill/references/classes/DMT_Panel.md +531 -0
- package/skill/references/classes/DMT_Pcb.md +575 -0
- package/skill/references/classes/DMT_Project.md +573 -0
- package/skill/references/classes/DMT_Schematic.md +1477 -0
- package/skill/references/classes/DMT_SelectControl.md +96 -0
- package/skill/references/classes/DMT_Team.md +172 -0
- package/skill/references/classes/DMT_Workspace.md +198 -0
- package/skill/references/classes/EDA.md +961 -0
- package/skill/references/classes/IPCB_ComplexPolygon.md +299 -0
- package/skill/references/classes/IPCB_Polygon.md +175 -0
- package/skill/references/classes/IPCB_PrimitiveArc.md +1901 -0
- package/skill/references/classes/IPCB_PrimitiveAttribute.md +2993 -0
- package/skill/references/classes/IPCB_PrimitiveComponent.md +2627 -0
- package/skill/references/classes/IPCB_PrimitiveComponentPad.md +410 -0
- package/skill/references/classes/IPCB_PrimitiveDimension.md +1419 -0
- package/skill/references/classes/IPCB_PrimitiveFill.md +1325 -0
- package/skill/references/classes/IPCB_PrimitiveImage.md +1461 -0
- package/skill/references/classes/IPCB_PrimitiveLine.md +1639 -0
- package/skill/references/classes/IPCB_PrimitiveObject.md +1700 -0
- package/skill/references/classes/IPCB_PrimitivePad.md +3155 -0
- package/skill/references/classes/IPCB_PrimitivePolyline.md +1193 -0
- package/skill/references/classes/IPCB_PrimitivePour.md +1858 -0
- package/skill/references/classes/IPCB_PrimitivePoured.md +556 -0
- package/skill/references/classes/IPCB_PrimitiveRegion.md +1332 -0
- package/skill/references/classes/IPCB_PrimitiveString.md +2315 -0
- package/skill/references/classes/IPCB_PrimitiveVia.md +1588 -0
- package/skill/references/classes/ISCH_PrimitiveArc.md +1676 -0
- package/skill/references/classes/ISCH_PrimitiveAttribute.md +2541 -0
- package/skill/references/classes/ISCH_PrimitiveBus.md +973 -0
- package/skill/references/classes/ISCH_PrimitiveCbbSymbolComponent.md +260 -0
- package/skill/references/classes/ISCH_PrimitiveCircle.md +1392 -0
- package/skill/references/classes/ISCH_PrimitiveComponent.md +2913 -0
- package/skill/references/classes/ISCH_PrimitiveComponentPin.md +155 -0
- package/skill/references/classes/ISCH_PrimitiveObject.md +960 -0
- package/skill/references/classes/ISCH_PrimitivePin.md +2402 -0
- package/skill/references/classes/ISCH_PrimitivePolygon.md +1028 -0
- package/skill/references/classes/ISCH_PrimitiveRectangle.md +1777 -0
- package/skill/references/classes/ISCH_PrimitiveText.md +1771 -0
- package/skill/references/classes/ISCH_PrimitiveWire.md +973 -0
- package/skill/references/classes/LIB_3DModel.md +780 -0
- package/skill/references/classes/LIB_Cbb.md +957 -0
- package/skill/references/classes/LIB_Classification.md +965 -0
- package/skill/references/classes/LIB_Device.md +1221 -0
- package/skill/references/classes/LIB_Footprint.md +1153 -0
- package/skill/references/classes/LIB_LibrariesList.md +329 -0
- package/skill/references/classes/LIB_PanelLibrary.md +855 -0
- package/skill/references/classes/LIB_SelectControl.md +89 -0
- package/skill/references/classes/LIB_SimulationModel.md +821 -0
- package/skill/references/classes/LIB_Symbol.md +1195 -0
- package/skill/references/classes/PCB_Document.md +1754 -0
- package/skill/references/classes/PCB_Drc.md +3375 -0
- package/skill/references/classes/PCB_Event.md +1081 -0
- package/skill/references/classes/PCB_Layer.md +1911 -0
- package/skill/references/classes/PCB_ManufactureData.md +2968 -0
- package/skill/references/classes/PCB_MathPolygon.md +785 -0
- package/skill/references/classes/PCB_Net.md +1128 -0
- package/skill/references/classes/PCB_Primitive.md +217 -0
- package/skill/references/classes/PCB_PrimitiveArc.md +894 -0
- package/skill/references/classes/PCB_PrimitiveAttribute.md +717 -0
- package/skill/references/classes/PCB_PrimitiveComponent.md +1050 -0
- package/skill/references/classes/PCB_PrimitiveDimension.md +833 -0
- package/skill/references/classes/PCB_PrimitiveFill.md +861 -0
- package/skill/references/classes/PCB_PrimitiveImage.md +875 -0
- package/skill/references/classes/PCB_PrimitiveLine.md +858 -0
- package/skill/references/classes/PCB_PrimitiveObject.md +800 -0
- package/skill/references/classes/PCB_PrimitivePad.md +944 -0
- package/skill/references/classes/PCB_PrimitivePolyline.md +819 -0
- package/skill/references/classes/PCB_PrimitivePour.md +845 -0
- package/skill/references/classes/PCB_PrimitivePoured.md +363 -0
- package/skill/references/classes/PCB_PrimitiveRegion.md +799 -0
- package/skill/references/classes/PCB_PrimitiveString.md +910 -0
- package/skill/references/classes/PCB_PrimitiveVia.md +765 -0
- package/skill/references/classes/PCB_RayTracerEngine.md +263 -0
- package/skill/references/classes/PCB_SelectControl.md +495 -0
- package/skill/references/classes/PNL_Document.md +83 -0
- package/skill/references/classes/SCH_Document.md +809 -0
- package/skill/references/classes/SCH_Drc.md +242 -0
- package/skill/references/classes/SCH_Event.md +583 -0
- package/skill/references/classes/SCH_ManufactureData.md +1205 -0
- package/skill/references/classes/SCH_Net.md +200 -0
- package/skill/references/classes/SCH_Netlist.md +191 -0
- package/skill/references/classes/SCH_Primitive.md +337 -0
- package/skill/references/classes/SCH_PrimitiveArc.md +692 -0
- package/skill/references/classes/SCH_PrimitiveAttribute.md +590 -0
- package/skill/references/classes/SCH_PrimitiveBus.md +624 -0
- package/skill/references/classes/SCH_PrimitiveCircle.md +683 -0
- package/skill/references/classes/SCH_PrimitiveComponent.md +2240 -0
- package/skill/references/classes/SCH_PrimitiveObject.md +666 -0
- package/skill/references/classes/SCH_PrimitivePin.md +754 -0
- package/skill/references/classes/SCH_PrimitivePolygon.md +627 -0
- package/skill/references/classes/SCH_PrimitiveRectangle.md +731 -0
- package/skill/references/classes/SCH_PrimitiveText.md +746 -0
- package/skill/references/classes/SCH_PrimitiveWire.md +703 -0
- package/skill/references/classes/SCH_SelectControl.md +520 -0
- package/skill/references/classes/SCH_SimulationEngine.md +133 -0
- package/skill/references/classes/SCH_Utils.md +121 -0
- package/skill/references/classes/SYS_ClientUrl.md +173 -0
- package/skill/references/classes/SYS_Dialog.md +825 -0
- package/skill/references/classes/SYS_Environment.md +502 -0
- package/skill/references/classes/SYS_FileManager.md +1686 -0
- package/skill/references/classes/SYS_FileSystem.md +1171 -0
- package/skill/references/classes/SYS_FontManager.md +224 -0
- package/skill/references/classes/SYS_FormatConversion.md +349 -0
- package/skill/references/classes/SYS_HeaderMenu.md +479 -0
- package/skill/references/classes/SYS_I18n.md +861 -0
- package/skill/references/classes/SYS_IFrame.md +535 -0
- package/skill/references/classes/SYS_LoadingAndProgressBar.md +246 -0
- package/skill/references/classes/SYS_Log.md +424 -0
- package/skill/references/classes/SYS_Math.md +1565 -0
- package/skill/references/classes/SYS_Message.md +363 -0
- package/skill/references/classes/SYS_MessageBox.md +285 -0
- package/skill/references/classes/SYS_MessageBus.md +1618 -0
- package/skill/references/classes/SYS_PanelControl.md +696 -0
- package/skill/references/classes/SYS_RightClickMenu.md +175 -0
- package/skill/references/classes/SYS_Setting.md +85 -0
- package/skill/references/classes/SYS_ShortcutKey.md +623 -0
- package/skill/references/classes/SYS_Storage.md +484 -0
- package/skill/references/classes/SYS_Timer.md +447 -0
- package/skill/references/classes/SYS_ToastMessage.md +194 -0
- package/skill/references/classes/SYS_Tool.md +241 -0
- package/skill/references/classes/SYS_Unit.md +594 -0
- package/skill/references/classes/SYS_WebSocket.md +401 -0
- package/skill/references/classes/SYS_Window.md +850 -0
- package/skill/references/enums/EDMT_EditorDocumentType.md +279 -0
- package/skill/references/enums/EDMT_EditorSplitScreenDirection.md +48 -0
- package/skill/references/enums/EDMT_EditorTabEventType.md +63 -0
- package/skill/references/enums/EDMT_IndicatorMarkerType.md +81 -0
- package/skill/references/enums/EDMT_ItemType.md +158 -0
- package/skill/references/enums/EDMT_ProjectCollaborationMode.md +48 -0
- package/skill/references/enums/ELIB_DeviceJlcLibraryCategory.md +48 -0
- package/skill/references/enums/ELIB_LibraryType.md +114 -0
- package/skill/references/enums/ELIB_PreviewType.md +70 -0
- package/skill/references/enums/ELIB_SimulationModelType.md +48 -0
- package/skill/references/enums/ELIB_SymbolType.md +125 -0
- package/skill/references/enums/EPCB_AutoRoutingCornerStyle.md +48 -0
- package/skill/references/enums/EPCB_AutoRoutingExistingPrimitiveMode.md +48 -0
- package/skill/references/enums/EPCB_AutoRoutingOptimization.md +48 -0
- package/skill/references/enums/EPCB_DocumentCanvasUpdateCalculationActiveStatus.md +48 -0
- package/skill/references/enums/EPCB_DocumentRatlineCalculatingActiveStatus.md +52 -0
- package/skill/references/enums/EPCB_InactiveLayerDisplayMode.md +59 -0
- package/skill/references/enums/EPCB_LayerColorConfiguration.md +81 -0
- package/skill/references/enums/EPCB_LayerId.md +882 -0
- package/skill/references/enums/EPCB_LayerStatus.md +59 -0
- package/skill/references/enums/EPCB_LayerType.md +114 -0
- package/skill/references/enums/EPCB_MouseEventType.md +59 -0
- package/skill/references/enums/EPCB_NetEventType.md +59 -0
- package/skill/references/enums/EPCB_PcbPlateType.md +48 -0
- package/skill/references/enums/EPCB_PdfOutputMethod.md +59 -0
- package/skill/references/enums/EPCB_PrimitiveArcInteractiveMode.md +48 -0
- package/skill/references/enums/EPCB_PrimitiveDimensionType.md +59 -0
- package/skill/references/enums/EPCB_PrimitiveEventType.md +59 -0
- package/skill/references/enums/EPCB_PrimitiveFillMode.md +63 -0
- package/skill/references/enums/EPCB_PrimitivePadHeatWeldingConnectionMethod.md +59 -0
- package/skill/references/enums/EPCB_PrimitivePadHoleType.md +59 -0
- package/skill/references/enums/EPCB_PrimitivePadShapeType.md +81 -0
- package/skill/references/enums/EPCB_PrimitivePadType.md +59 -0
- package/skill/references/enums/EPCB_PrimitivePourFillMethod.md +59 -0
- package/skill/references/enums/EPCB_PrimitiveRegionRuleType.md +96 -0
- package/skill/references/enums/EPCB_PrimitiveStringAlignMode.md +125 -0
- package/skill/references/enums/EPCB_PrimitiveType.md +202 -0
- package/skill/references/enums/EPCB_PrimitiveViaType.md +59 -0
- package/skill/references/enums/ESCH_DynamicSimulationEnginePullEventType.md +103 -0
- package/skill/references/enums/ESCH_DynamicSimulationEnginePushEventType.md +81 -0
- package/skill/references/enums/ESCH_ExportDocumentFileType.md +59 -0
- package/skill/references/enums/ESCH_MouseEventType.md +48 -0
- package/skill/references/enums/ESCH_PrimitiveComponentType.md +125 -0
- package/skill/references/enums/ESCH_PrimitiveEventType.md +70 -0
- package/skill/references/enums/ESCH_PrimitiveFillStyle.md +114 -0
- package/skill/references/enums/ESCH_PrimitiveLineType.md +70 -0
- package/skill/references/enums/ESCH_PrimitivePinShape.md +70 -0
- package/skill/references/enums/ESCH_PrimitivePinType.md +147 -0
- package/skill/references/enums/ESCH_PrimitiveTextAlignMode.md +125 -0
- package/skill/references/enums/ESCH_PrimitiveType.md +180 -0
- package/skill/references/enums/ESCH_SimulationNetlistType.md +37 -0
- package/skill/references/enums/ESCH_SpiceSimulationEnginePullEventType.md +48 -0
- package/skill/references/enums/ESCH_SpiceSimulationEnginePushEventType.md +70 -0
- package/skill/references/enums/ESYS_BottomPanelTab.md +81 -0
- package/skill/references/enums/ESYS_HeaderMenuEnvironment.md +158 -0
- package/skill/references/enums/ESYS_ImportProjectBoardOutlineSource.md +52 -0
- package/skill/references/enums/ESYS_ImportProjectImportOption.md +59 -0
- package/skill/references/enums/ESYS_ImportProjectSchematicObjectStyle.md +48 -0
- package/skill/references/enums/ESYS_ImportProjectViaSolderMaskExpansion.md +52 -0
- package/skill/references/enums/ESYS_LeftPanelTab.md +81 -0
- package/skill/references/enums/ESYS_LogType.md +103 -0
- package/skill/references/enums/ESYS_NetlistType.md +114 -0
- package/skill/references/enums/ESYS_RightPanelTab.md +202 -0
- package/skill/references/enums/ESYS_ShortcutKeyEffectiveEditorRange.md +191 -0
- package/skill/references/enums/ESYS_ShortcutKeyEffectiveEditorScene.md +92 -0
- package/skill/references/enums/ESYS_StartPageQuickStartItem.md +206 -0
- package/skill/references/enums/ESYS_Theme.md +48 -0
- package/skill/references/enums/ESYS_ToastMessageType.md +81 -0
- package/skill/references/enums/ESYS_Unit.md +103 -0
- package/skill/references/enums/ESYS_WindowEventType.md +48 -0
- package/skill/references/enums/ESYS_WindowOpenTarget.md +48 -0
- package/skill/references/enums/NetportDeviceName.md +147 -0
- package/skill/references/enums/SchToolBarDeviceName.md +279 -0
- package/skill/references/interfaces/BoardProps.md +169 -0
- package/skill/references/interfaces/ButtonProps.md +169 -0
- package/skill/references/interfaces/CheckBoxProps.md +196 -0
- package/skill/references/interfaces/ComponentPropsMap.md +448 -0
- package/skill/references/interfaces/DialogProps.md +385 -0
- package/skill/references/interfaces/FlexItemProps.md +116 -0
- package/skill/references/interfaces/FlexProps.md +224 -0
- package/skill/references/interfaces/GridItemProps.md +143 -0
- package/skill/references/interfaces/GridProps.md +143 -0
- package/skill/references/interfaces/IDMT_BoardItem.md +171 -0
- package/skill/references/interfaces/IDMT_BriefProjectItem.md +171 -0
- package/skill/references/interfaces/IDMT_EditorDocumentItem.md +169 -0
- package/skill/references/interfaces/IDMT_EditorSplitScreenItem.md +173 -0
- package/skill/references/interfaces/IDMT_EditorTabItem.md +169 -0
- package/skill/references/interfaces/IDMT_FolderItem.md +225 -0
- package/skill/references/interfaces/IDMT_IndicatorMarkerShape.md +393 -0
- package/skill/references/interfaces/IDMT_PanelItem.md +144 -0
- package/skill/references/interfaces/IDMT_PcbItem.md +171 -0
- package/skill/references/interfaces/IDMT_ProjectItem.md +143 -0
- package/skill/references/interfaces/IDMT_SchematicItem.md +225 -0
- package/skill/references/interfaces/IDMT_SchematicPageItem.md +198 -0
- package/skill/references/interfaces/IDMT_TeamItem.md +144 -0
- package/skill/references/interfaces/IDMT_WorkspaceItem.md +117 -0
- package/skill/references/interfaces/IDesignPortal.md +103 -0
- package/skill/references/interfaces/ILIB_3DModelItem.md +198 -0
- package/skill/references/interfaces/ILIB_3DModelSearchItem.md +277 -0
- package/skill/references/interfaces/ILIB_CbbItem.md +225 -0
- package/skill/references/interfaces/ILIB_CbbSearchItem.md +277 -0
- package/skill/references/interfaces/ILIB_ClassificationIndex.md +150 -0
- package/skill/references/interfaces/ILIB_DeviceAssociationItem.md +210 -0
- package/skill/references/interfaces/ILIB_DeviceExtendPropertyItem.md +304 -0
- package/skill/references/interfaces/ILIB_DeviceItem.md +279 -0
- package/skill/references/interfaces/ILIB_DevicePropertiesForSearch.md +250 -0
- package/skill/references/interfaces/ILIB_DeviceSearchItem.md +521 -0
- package/skill/references/interfaces/ILIB_ExtendLibrary3DModelFunctions.md +64 -0
- package/skill/references/interfaces/ILIB_ExtendLibraryCbbFunctions.md +99 -0
- package/skill/references/interfaces/ILIB_ExtendLibraryClassificationIndex.md +150 -0
- package/skill/references/interfaces/ILIB_ExtendLibraryDeviceFunctions.md +157 -0
- package/skill/references/interfaces/ILIB_ExtendLibraryFootprintFunctions.md +63 -0
- package/skill/references/interfaces/ILIB_ExtendLibraryFunctions.md +123 -0
- package/skill/references/interfaces/ILIB_ExtendLibraryItem.md +97 -0
- package/skill/references/interfaces/ILIB_ExtendLibraryItemIndex.md +98 -0
- package/skill/references/interfaces/ILIB_ExtendLibrarySearchProperty.md +115 -0
- package/skill/references/interfaces/ILIB_ExtendLibrarySearchResult.md +169 -0
- package/skill/references/interfaces/ILIB_ExtendLibrarySearchResultDataLine.md +234 -0
- package/skill/references/interfaces/ILIB_ExtendLibrarySymbolFunctions.md +105 -0
- package/skill/references/interfaces/ILIB_ExtendLibraryUserIndex.md +96 -0
- package/skill/references/interfaces/ILIB_FootprintItem.md +198 -0
- package/skill/references/interfaces/ILIB_FootprintPropertiesForSearch.md +61 -0
- package/skill/references/interfaces/ILIB_FootprintSearchItem.md +277 -0
- package/skill/references/interfaces/ILIB_LibraryInfo.md +92 -0
- package/skill/references/interfaces/ILIB_LibraryItem.md +115 -0
- package/skill/references/interfaces/ILIB_PanelLibraryItem.md +198 -0
- package/skill/references/interfaces/ILIB_PanelLibrarySearchItem.md +277 -0
- package/skill/references/interfaces/ILIB_SimulationModelItem.md +306 -0
- package/skill/references/interfaces/ILIB_SimulationModelSearchItem.md +304 -0
- package/skill/references/interfaces/ILIB_SymbolItem.md +279 -0
- package/skill/references/interfaces/ILIB_SymbolPropertiesForSearch.md +61 -0
- package/skill/references/interfaces/ILIB_SymbolSearchItem.md +304 -0
- package/skill/references/interfaces/IPCB_AutoLayoutResult.md +169 -0
- package/skill/references/interfaces/IPCB_AutoRoutingProps.md +220 -0
- package/skill/references/interfaces/IPCB_AutoRoutingResult.md +169 -0
- package/skill/references/interfaces/IPCB_BomPropertiesTableColumns.md +169 -0
- package/skill/references/interfaces/IPCB_DifferentialPairItem.md +115 -0
- package/skill/references/interfaces/IPCB_DiscretizeOptions.md +65 -0
- package/skill/references/interfaces/IPCB_DiscretizedPoint.md +88 -0
- package/skill/references/interfaces/IPCB_EqualLengthNetGroupItem.md +115 -0
- package/skill/references/interfaces/IPCB_LayerItem.md +277 -0
- package/skill/references/interfaces/IPCB_NetClassItem.md +115 -0
- package/skill/references/interfaces/IPCB_NetInfo.md +115 -0
- package/skill/references/interfaces/IPCB_PadPairGroupItem.md +88 -0
- package/skill/references/interfaces/IPCB_PadPairMinWireLengthItem.md +88 -0
- package/skill/references/interfaces/IPCB_PhysicalStackingConfiguration.md +115 -0
- package/skill/references/interfaces/IPCB_Primitive.md +218 -0
- package/skill/references/interfaces/IPCB_PrimitiveAPI.md +175 -0
- package/skill/references/interfaces/IPCB_PrimitivePadHeatWelding.md +151 -0
- package/skill/references/interfaces/IPCB_PrimitivePouredPourFill.md +142 -0
- package/skill/references/interfaces/IPCB_PrimitiveSolderMaskAndPasteMaskExpansion.md +154 -0
- package/skill/references/interfaces/IPCB_SubstratePhysicalProperties.md +88 -0
- package/skill/references/interfaces/IRawNet.md +103 -0
- package/skill/references/interfaces/IRawPureSchematic.md +80 -0
- package/skill/references/interfaces/IRawSchematic.md +103 -0
- package/skill/references/interfaces/IRawWire.md +149 -0
- package/skill/references/interfaces/ISCH_DrcError.md +142 -0
- package/skill/references/interfaces/ISCH_DrcErrorPrimitive.md +142 -0
- package/skill/references/interfaces/ISCH_ExportPngResolution.md +94 -0
- package/skill/references/interfaces/ISCH_NetInfo.md +88 -0
- package/skill/references/interfaces/ISCH_Primitive.md +219 -0
- package/skill/references/interfaces/ISCH_PrimitiveAPI.md +175 -0
- package/skill/references/interfaces/ISCH_ProjectNetInfo.md +142 -0
- package/skill/references/interfaces/ISCH_WireInfo.md +169 -0
- package/skill/references/interfaces/ISYS_FileSystemFileList.md +169 -0
- package/skill/references/interfaces/ISYS_HeaderMenuSub1MenuItem.md +174 -0
- package/skill/references/interfaces/ISYS_HeaderMenuSub2MenuItem.md +147 -0
- package/skill/references/interfaces/ISYS_HeaderMenuTopMenuItem.md +115 -0
- package/skill/references/interfaces/ISYS_HeaderMenus.md +408 -0
- package/skill/references/interfaces/ISYS_LogLine.md +115 -0
- package/skill/references/interfaces/ISYS_MathBBox.md +142 -0
- package/skill/references/interfaces/ISYS_MathPoint.md +88 -0
- package/skill/references/interfaces/ISYS_MathPolygonWithHoles.md +92 -0
- package/skill/references/interfaces/ISYS_MessageBusTask.md +115 -0
- package/skill/references/interfaces/ISYS_MultilingualLanguagesData.md +13 -0
- package/skill/references/interfaces/ISYS_PcbComparisonResponse.md +115 -0
- package/skill/references/interfaces/ISYS_RightClickMenuItem.md +174 -0
- package/skill/references/interfaces/ISYS_ShortcutKeyData.md +169 -0
- package/skill/references/interfaces/ISYS_ShortcutKeyDataWithCallFn.md +62 -0
- package/skill/references/interfaces/ISYS_ShortcutKeyDataWithUserDefinedShortcutKey.md +62 -0
- package/skill/references/interfaces/ISYS_WindowEventListenerRemovableObject.md +109 -0
- package/skill/references/interfaces/IconProps.md +88 -0
- package/skill/references/interfaces/ImageProps.md +115 -0
- package/skill/references/interfaces/InputProps.md +520 -0
- package/skill/references/interfaces/ListChildren.md +223 -0
- package/skill/references/interfaces/ListProps.md +223 -0
- package/skill/references/interfaces/ModalProps.md +358 -0
- package/skill/references/interfaces/RadioGroupProps.md +196 -0
- package/skill/references/interfaces/RadioItem.md +115 -0
- package/skill/references/interfaces/ScrollerProps.md +169 -0
- package/skill/references/interfaces/SelectListItem.md +142 -0
- package/skill/references/interfaces/SelectProps.md +169 -0
- package/skill/references/interfaces/SlotProps.md +88 -0
- package/skill/references/interfaces/StyleProps.md +385 -0
- package/skill/references/interfaces/TextAreaProps.md +196 -0
- package/skill/references/interfaces/TextProps.md +169 -0
- package/skill/references/types/ISYS_LanguageKeyValuePairs.md +13 -0
- package/skill/references/types/TPCB_LayerTypesOfInnerLayer.md +12 -0
- package/skill/references/types/TPCB_LayersInTheSelectable.md +43 -0
- package/skill/references/types/TPCB_LayersOfComponent.md +12 -0
- package/skill/references/types/TPCB_LayersOfCopper.md +16 -0
- package/skill/references/types/TPCB_LayersOfCustom.md +42 -0
- package/skill/references/types/TPCB_LayersOfDimension.md +17 -0
- package/skill/references/types/TPCB_LayersOfFill.md +29 -0
- package/skill/references/types/TPCB_LayersOfImage.md +23 -0
- package/skill/references/types/TPCB_LayersOfInner.md +42 -0
- package/skill/references/types/TPCB_LayersOfLine.md +26 -0
- package/skill/references/types/TPCB_LayersOfObject.md +13 -0
- package/skill/references/types/TPCB_LayersOfPad.md +12 -0
- package/skill/references/types/TPCB_LayersOfRegion.md +12 -0
- package/skill/references/types/TPCB_NumberOfCopperLayers.md +10 -0
- package/skill/references/types/TPCB_PolygonSourceArray.md +83 -0
- package/skill/references/types/TPCB_PrimitiveDimensionCoordinateSet.md +67 -0
- package/skill/references/types/TPCB_PrimitivePadHole.md +31 -0
- package/skill/references/types/TPCB_PrimitivePadShape.md +62 -0
- package/skill/references/types/TPCB_PrimitiveSpecialPadShape.md +20 -0
- package/skill/references/types/TSYS_MathPolygonGroup.md +16 -0
- package/skill/references/types/TSYS_MathPolygonInput.md +21 -0
- package/skill/references/types/TSYS_PcbComparisonErrorCode.md +10 -0
- package/skill/references/types/TSYS_ShortcutKeys.md +97 -0
- package/skill/user-guide/using-extension.md +47 -0
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# Text System
|
|
2
|
+
|
|
3
|
+
## STRING Text
|
|
4
|
+
|
|
5
|
+
When `STRING` is on a signal layer, from the DRC perspective it is:
|
|
6
|
+
|
|
7
|
+
1. Net-less.
|
|
8
|
+
2. A BBox with `position` at 0,0, `rotation angle` 0, and `whether mirrored` 0.
|
|
9
|
+
3. A rectangular area after applying `position`, `rotation angle`, and `whether mirrored` transformations.
|
|
10
|
+
|
|
11
|
+
```json
|
|
12
|
+
{ "type": "STRING", "id":"UUID", "ticket": 1 }||
|
|
13
|
+
{
|
|
14
|
+
"partitionId":null,
|
|
15
|
+
"groupId":0,
|
|
16
|
+
"locked":1,
|
|
17
|
+
"zIndex":0.2693,
|
|
18
|
+
"layerId":1,
|
|
19
|
+
"positionX":300,
|
|
20
|
+
"positionY":600,
|
|
21
|
+
"text":"any text",
|
|
22
|
+
"fontFamily":"SimSun",
|
|
23
|
+
"fontSize":50,
|
|
24
|
+
"strokeWidth":10,
|
|
25
|
+
"bold":0,
|
|
26
|
+
"italic":0,
|
|
27
|
+
"origin":5,
|
|
28
|
+
"angle":15,
|
|
29
|
+
"reverse":1,
|
|
30
|
+
"reverseExpansion":0,
|
|
31
|
+
"mirror":1,
|
|
32
|
+
"width":100,
|
|
33
|
+
"height":200,
|
|
34
|
+
"path":["complex polygon"],
|
|
35
|
+
}|
|
|
36
|
+
["STRING", "e100", 0, 1, 0.2693, 1, 300, 600, "any text", "SimSun", 50, 10, 0, 0, 5, 15, 1, 0, 1]
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
1. type text `STRING`.
|
|
40
|
+
2. id primitive ID, unique within the document.
|
|
41
|
+
3. ticket logical clock.
|
|
42
|
+
4. partitionId partition ID it belongs to, null means no partition. Ignored for footprints.
|
|
43
|
+
5. groupId group ID: 0 no group, non-zero is the group flag, same flag means same group.
|
|
44
|
+
6. locked whether locked.
|
|
45
|
+
7. zIndex Z-axis height.
|
|
46
|
+
8. layerId layer.
|
|
47
|
+
9. positionX position X.
|
|
48
|
+
10. positionY position Y.
|
|
49
|
+
11. text content.
|
|
50
|
+
12. fontFamily font name.
|
|
51
|
+
13. fontSize font size.
|
|
52
|
+
14. strokeWidth stroke width.
|
|
53
|
+
15. bold whether bold.
|
|
54
|
+
16. italic whether italic.
|
|
55
|
+
17. origin alignment mode: `0` top-left, `1` top-center, `2` top-right, `3` middle-left, `4` middle-center, `5` middle-right, `6` bottom-left, `7` bottom-center, `8` bottom-right.
|
|
56
|
+
18. angle rotation angle.
|
|
57
|
+
19. reverse whether reverse expansion.
|
|
58
|
+
20. expansion reverse expansion size: size of the reverse expansion area, supports negative numbers.
|
|
59
|
+
21. mirror whether mirrored. Generally, when text appears on the bottom layer, this should also be adjusted to `1`.
|
|
60
|
+
22. width height, `null` if none.
|
|
61
|
+
23. height width, `null` if none.
|
|
62
|
+
24. path complex polygon array, `null` if none.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# BLOB True-Color Image
|
|
2
|
+
|
|
3
|
+
```json
|
|
4
|
+
{ "type": "META", "id": "BLOB-HASH-ID", "ticket": 1 }||{ "filename": "dadas", "data": "data:image/png;base64,asdfasdfwer" }|
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
1. filename file name.
|
|
8
|
+
2. data reserved metadata; binary data uses a specification similar to `Data URLs`, but with differences.
|
|
9
|
+
|
|
10
|
+
1. General format, fully compatible with `Data URLs`: `data:[<mediatype>][;base64],<data>`
|
|
11
|
+
|
|
12
|
+
- e.g. `data:image/png;base64,asdfasdfwer`
|
|
13
|
+
- e.g. `data:text/html,<html></html>`
|
|
14
|
+
- In general, this format should be used whenever possible, so it can be loaded directly with Web APIs without algorithm conversion.
|
|
15
|
+
|
|
16
|
+
2. Extended format, extending functionality by adding encodings such as gzip/deflate: `data:<mediatype>[pipeline],<data>`
|
|
17
|
+
|
|
18
|
+
- e.g. `data:text/html;gzip;base64,asdfasdf`
|
|
19
|
+
1. First base64-decode `asdfasdf`.
|
|
20
|
+
2. Then decompress with gzip.
|
|
21
|
+
3. Finally load as `text/html`.
|
|
22
|
+
- e.g. `data:text/css;deflate;aes128;base64,aaaaaaa`
|
|
23
|
+
1. First base64-decode `aaaaaaa`.
|
|
24
|
+
2. Then decrypt with aes128 (specific encryption/decryption logic to be determined).
|
|
25
|
+
3. Then decompress with deflate.
|
|
26
|
+
4. Finally load as `text/css`.
|
|
27
|
+
|
|
28
|
+
```json
|
|
29
|
+
{ "type": "META", "id": "ID", "ticket": 1 }||{ "filename": "dadas", "data": "data:application/vnd.ms-excel;base64,xxsasdfawerwerqwer" }|
|
|
30
|
+
```
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Common Data
|
|
2
|
+
|
|
3
|
+
Each document carries basic information, creation information, and modification information, which are maintained by the project manager.
|
|
4
|
+
|
|
5
|
+
### Basic Information
|
|
6
|
+
|
|
7
|
+
```json
|
|
8
|
+
{ "type": "META", "ticket": 1 }||data
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
1. type "META" basic information.
|
|
12
|
+
2. data specific data, different for each document.
|
|
13
|
+
|
|
14
|
+
### Creation Information
|
|
15
|
+
|
|
16
|
+
Same for every document.
|
|
17
|
+
|
|
18
|
+
```json
|
|
19
|
+
{ "type": "META_CREATE", "ticket": 1 }||
|
|
20
|
+
{
|
|
21
|
+
"creator": { "uuid":"UUID", "nickname":"nickname", "username":"username", },
|
|
22
|
+
"createTime": 1725593026474,
|
|
23
|
+
}|
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
1. type "META_CREATE" creation information.
|
|
27
|
+
2. creator creator.
|
|
28
|
+
3. createTime creation time.
|
|
29
|
+
|
|
30
|
+
### Modification Information
|
|
31
|
+
|
|
32
|
+
```json
|
|
33
|
+
{ "type": "META_MODIFY", "ticket": 1 }||
|
|
34
|
+
{
|
|
35
|
+
"modifier": { "uuid":"UUID", "nickname":"nickname", "username":"username", },
|
|
36
|
+
"createTime": 1725593026474,
|
|
37
|
+
}|
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
1. type "META_MODIFY" modification information.
|
|
41
|
+
2. modifier modifier.
|
|
42
|
+
3. updateTime update time.
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# Component Grouping
|
|
2
|
+
|
|
3
|
+
## Document Header
|
|
4
|
+
|
|
5
|
+
```json
|
|
6
|
+
{ "type": "DOCHEAD" }||{ "docType": "COMPONENT_GROUP", "uuid": "UUID", "client": "clientID" }|
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
1. type: `DOCHEAD`, document header identifier.
|
|
10
|
+
2. docType: `COMPONENT_GROUP` component grouping.
|
|
11
|
+
3. uuid: unique identifier, random id.
|
|
12
|
+
4. client: terminal identifier for eventual consistency.
|
|
13
|
+
|
|
14
|
+
### META Basic Information
|
|
15
|
+
|
|
16
|
+
```json
|
|
17
|
+
{ "type": "META", "ticket": 1 }||
|
|
18
|
+
{
|
|
19
|
+
/** Name */
|
|
20
|
+
"title": string,
|
|
21
|
+
/** Parent component group uuid of the child component group */
|
|
22
|
+
"parent": string,
|
|
23
|
+
/** Component groups belonging directly to a variant do not participate in the component group tree */
|
|
24
|
+
"belong": string,
|
|
25
|
+
/** Sort order in the component group tree */
|
|
26
|
+
"zIndex": number,
|
|
27
|
+
/** Schematic */
|
|
28
|
+
"schematicId": string,
|
|
29
|
+
}|
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### GROUP_INDEX Sorting of Component Groups in Variants
|
|
33
|
+
|
|
34
|
+
```json
|
|
35
|
+
{ "type": "GROUP_INDEX", "ticket": 1, "id": "variantId" }||
|
|
36
|
+
{
|
|
37
|
+
"zIndex": 1,
|
|
38
|
+
}|
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
1. type: `GROUP_INDEX`
|
|
42
|
+
2. ticket: logical clock.
|
|
43
|
+
3. id: variant uuid.
|
|
44
|
+
4. zIndex: sort order within the variant.
|
|
45
|
+
|
|
46
|
+
### GROUP_DATA Attribute Data
|
|
47
|
+
|
|
48
|
+
```json
|
|
49
|
+
{ "type": "GROUP_DATA", "id": "e176@uuid", "ticket": 1 }||data
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
1. type `GROUP_DATA` attribute data.
|
|
53
|
+
2. id combined id, separated by `@`:
|
|
54
|
+
1. The first is the primitive ID.
|
|
55
|
+
2. The second is the instance page ID.
|
|
56
|
+
3. data attribute override, data signature is `{ [key: string]: string }| `
|
|
57
|
+
|
|
58
|
+
```json
|
|
59
|
+
{ "type": "GROUP_DATA", "id": "e176@uuid1", "ticket": 1 }||{ "Designator": "U15", "ASDF": "1234" }|
|
|
60
|
+
{ "type": "GROUP_DATA", "id": "e177@uuid1", "ticket": 2 }||{ "NUMBER": 2 }|
|
|
61
|
+
{ "type": "GROUP_DATA", "id": "e176@uuid2", "ticket": 3 }||{ "Author": "abc" }|
|
|
62
|
+
```
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Project Log Format
|
|
2
|
+
|
|
3
|
+
This document only describes data that belongs to the project but not to the canvas. For specific canvas data, please refer to the separate documents.
|
|
4
|
+
|
|
5
|
+
## Contents
|
|
6
|
+
|
|
7
|
+
- [Common Data](/en/format/project/common.md) - Includes basic information, creation information, modification information, etc.
|
|
8
|
+
- [Basic Information](/en/format/project/meta.md) - Includes metadata for project config, board, schematic, PCB, panel, symbol, footprint, device, etc.
|
|
9
|
+
- [BLOB True-Color Image](/en/format/project/blob.md) - True-color image data format.
|
|
10
|
+
- [Instance Attribute Override](/en/format/project/instance.md) - Instance attribute override format.
|
|
11
|
+
- [Variant](/en/format/project/variant.md) - Variant data format.
|
|
12
|
+
- [Component Grouping](/en/format/project/group.md) - Component grouping data format.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Instance Attribute Override
|
|
2
|
+
|
|
3
|
+
## Document Header
|
|
4
|
+
|
|
5
|
+
```json
|
|
6
|
+
{ "type": "DOCHEAD" }||{ "docType": "INSTANCE", "uuid": "SCH-UNIQUE-ID_$5|e100_$1|e55_$6|e15_$8", "client": "clientID" }|
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
1. type: `DOCHEAD`, document header identifier.
|
|
10
|
+
2. docType: `INSTANCE` instance attribute override.
|
|
11
|
+
3. uuid: hierarchical ID, unique within the project, IDs separated by `_`.
|
|
12
|
+
1. The first is the top-level schematic ID.
|
|
13
|
+
2. The last goes only to the sheet ID.
|
|
14
|
+
3. All in between use the numbering combination syntax to locate `Block Symbol`, e.g. `$1|e2`, where `$1` is the sheet ID and `e2` is the `Block Symbol` ID.
|
|
15
|
+
4. client: terminal identifier for eventual consistency.
|
|
16
|
+
|
|
17
|
+
## Attribute Override
|
|
18
|
+
|
|
19
|
+
```json
|
|
20
|
+
{ "type": "INSTANCE_ATTR", "id": "e176", "ticket": 1 }||data
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
1. type `INSTANCE_ATTR` instance attribute override.
|
|
24
|
+
2. id primitive ID.
|
|
25
|
+
3. data attribute override, data signature is `{ [parentId: string]: { [key: string]: string }| }|`
|
|
26
|
+
|
|
27
|
+
```json
|
|
28
|
+
{ "type": "DOCHEAD" }||{ "docType": "INSTANCE", "uuid": "SCH-UNIQUE-ID_$5|e100_$1|e55_$6|e15_$8", "client": "clientID" }|
|
|
29
|
+
{ "type": "INSTANCE_ATTR", "id": "e176", "ticket": 1 }||{ "Designator": "U15", "ASDF": "1234" }|
|
|
30
|
+
{ "type": "INSTANCE_ATTR", "id": "e176e5", "ticket": 1 }||{ "NUMBER": 2 }|
|
|
31
|
+
{ "type": "INSTANCE_ATTR", "id": "e178", "ticket": 1 }||{ "Author": "abc" }|
|
|
32
|
+
```
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
# Basic Information
|
|
2
|
+
|
|
3
|
+
### Project Config
|
|
4
|
+
|
|
5
|
+
Stores project configuration data, previously kept in the backend project details.
|
|
6
|
+
|
|
7
|
+
```json
|
|
8
|
+
{ "type": "META", "ticket": 1 }||{ "name": "name", "default_sheet": "default_sheet_uuid"}|
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
1. name project name.
|
|
12
|
+
2. default_sheet default sheet of the project.
|
|
13
|
+
|
|
14
|
+
### Board
|
|
15
|
+
|
|
16
|
+
```json
|
|
17
|
+
{ "type": "META", "ticket": 1 }||{ "title": "title", "sort": 1}|
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
1. title board name.
|
|
21
|
+
2. sort sort weight.
|
|
22
|
+
|
|
23
|
+
### Schematic
|
|
24
|
+
|
|
25
|
+
```json
|
|
26
|
+
{ "type": "META", "ticket": 1 }||{ "name": "name", "board":"", "source": "", "version": ""}|
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
1. name name.
|
|
30
|
+
2. board uuid of the board it belongs to, empty if none.
|
|
31
|
+
3. source source document uuid.
|
|
32
|
+
4. version version, update time of the source document.
|
|
33
|
+
|
|
34
|
+
### Schematic Page
|
|
35
|
+
|
|
36
|
+
```json
|
|
37
|
+
{ "type": "META", "ticket": 1 }||
|
|
38
|
+
{
|
|
39
|
+
"name": "Page Name",
|
|
40
|
+
"schematic": "SID",
|
|
41
|
+
"description": "description",
|
|
42
|
+
"sort": 0.5,
|
|
43
|
+
"source": "",
|
|
44
|
+
"version": "",
|
|
45
|
+
}|
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
1. name name.
|
|
49
|
+
2. schematic uuid of the schematic it belongs to.
|
|
50
|
+
3. description description.
|
|
51
|
+
4. sort sort weight.
|
|
52
|
+
5. source source document uuid.
|
|
53
|
+
6. version version, update time of the source document.
|
|
54
|
+
|
|
55
|
+
### PCB
|
|
56
|
+
|
|
57
|
+
```json
|
|
58
|
+
{ "type": "META", "ticket": 1 }||
|
|
59
|
+
{
|
|
60
|
+
"name": "PCB Name",
|
|
61
|
+
"board": "boardId",
|
|
62
|
+
"description": "description",
|
|
63
|
+
"parentId":"",
|
|
64
|
+
"sort": 0.5,
|
|
65
|
+
"source": "",
|
|
66
|
+
"version": "",
|
|
67
|
+
}|
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
1. name name.
|
|
71
|
+
2. board uuid of the board it belongs to, empty if none.
|
|
72
|
+
3. description description.
|
|
73
|
+
4. parentId parent PCB UUID, empty if none.
|
|
74
|
+
5. sort sort weight.
|
|
75
|
+
6. source source document uuid.
|
|
76
|
+
7. version version, update time of the source document.
|
|
77
|
+
|
|
78
|
+
Child PCB
|
|
79
|
+
|
|
80
|
+
```json
|
|
81
|
+
{ "type": "META", "ticket": 1 }||
|
|
82
|
+
{
|
|
83
|
+
"name": "Child PCB Name",
|
|
84
|
+
"board": "",
|
|
85
|
+
"description": "description",
|
|
86
|
+
"parentId":"UUID",
|
|
87
|
+
"sort": 0.2,
|
|
88
|
+
"source": "",
|
|
89
|
+
"version": "",
|
|
90
|
+
}|
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Panel
|
|
94
|
+
|
|
95
|
+
```json
|
|
96
|
+
{ "type": "META", "ticket": 1 }||
|
|
97
|
+
{
|
|
98
|
+
"name": "Panel Name",
|
|
99
|
+
"description": "description",
|
|
100
|
+
"sort": 0.5,
|
|
101
|
+
}|
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
1. name name.
|
|
105
|
+
2. description description.
|
|
106
|
+
3. sort sort weight.
|
|
107
|
+
|
|
108
|
+
### Symbol
|
|
109
|
+
|
|
110
|
+
```json
|
|
111
|
+
{ "type": "META", "ticket": 1 }||
|
|
112
|
+
{
|
|
113
|
+
"name": "Name",
|
|
114
|
+
"description": "description",
|
|
115
|
+
"type": 2,
|
|
116
|
+
"tags": "tag1",
|
|
117
|
+
"source": "",
|
|
118
|
+
"version": "",
|
|
119
|
+
}|
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
1. name name.
|
|
123
|
+
2. description description.
|
|
124
|
+
3. type symbol type.
|
|
125
|
+
4. tags classification tags.
|
|
126
|
+
5. source source document uuid.
|
|
127
|
+
6. version version, update time of the source document.
|
|
128
|
+
|
|
129
|
+
### Footprint
|
|
130
|
+
|
|
131
|
+
```json
|
|
132
|
+
{ "type": "META", "ticket": 1 }||
|
|
133
|
+
{
|
|
134
|
+
"name": "Name",
|
|
135
|
+
"description": "description",
|
|
136
|
+
"type": 4,
|
|
137
|
+
"tags": "tag1",
|
|
138
|
+
"source": "",
|
|
139
|
+
"version": "",
|
|
140
|
+
"pcb": "",
|
|
141
|
+
}|
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
1. name name.
|
|
145
|
+
2. description description.
|
|
146
|
+
3. type footprint type.
|
|
147
|
+
4. tags classification tags.
|
|
148
|
+
5. source source document uuid.
|
|
149
|
+
6. version version, update time of the source document.
|
|
150
|
+
7. pcb uuid of the pcb it belongs to, empty by default. Only special footprints have this field.
|
|
151
|
+
|
|
152
|
+
Special Footprint
|
|
153
|
+
|
|
154
|
+
```json
|
|
155
|
+
{ "type": "META", "ticket": 1 }||
|
|
156
|
+
{
|
|
157
|
+
"name": "Name",
|
|
158
|
+
"description": "description",
|
|
159
|
+
"type": 4,
|
|
160
|
+
"tags": "tag1",
|
|
161
|
+
"source": "",
|
|
162
|
+
"version": "",
|
|
163
|
+
"pcb": "pcbUuid",
|
|
164
|
+
}|
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
### Device
|
|
168
|
+
|
|
169
|
+
```json
|
|
170
|
+
{ "type": "META", "ticket": 1 }||
|
|
171
|
+
{
|
|
172
|
+
"name": "Name",
|
|
173
|
+
"description": "description",
|
|
174
|
+
"type": 4,
|
|
175
|
+
"tags": "tag1",
|
|
176
|
+
"source": "",
|
|
177
|
+
"version": "",
|
|
178
|
+
"attributes": {},
|
|
179
|
+
"images": "",
|
|
180
|
+
}|
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
1. name name.
|
|
184
|
+
2. description description.
|
|
185
|
+
3. tags classification tags.
|
|
186
|
+
4. source source document uuid.
|
|
187
|
+
5. version version, update time of the source document.
|
|
188
|
+
6. attributes device attributes Key-Value.
|
|
189
|
+
7. images image links.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Variant
|
|
2
|
+
|
|
3
|
+
## Document Header
|
|
4
|
+
|
|
5
|
+
```json
|
|
6
|
+
{ "type": "DOCHEAD" }||{ "docType": "VARIANT", "uuid": "UUID", "client": "clientID" }|
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
1. type: `DOCHEAD`, document header identifier.
|
|
10
|
+
2. docType: `VARIANT` variant data.
|
|
11
|
+
3. uuid: unique identifier, random id.
|
|
12
|
+
4. client: terminal identifier for eventual consistency.
|
|
13
|
+
|
|
14
|
+
## META Basic Information
|
|
15
|
+
|
|
16
|
+
```json
|
|
17
|
+
{ "type": "META", "ticket": 1 }||
|
|
18
|
+
{
|
|
19
|
+
/** Name */
|
|
20
|
+
"title": string,
|
|
21
|
+
/** Description */
|
|
22
|
+
"description": string,
|
|
23
|
+
/** Schematic */
|
|
24
|
+
"schematicId": string,
|
|
25
|
+
/** Sort order */
|
|
26
|
+
"zIndex": number,
|
|
27
|
+
/** Whether there are ungrouped items */
|
|
28
|
+
"notGrouped": boolean,
|
|
29
|
+
}|
|
|
30
|
+
```
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# ATTR Attribute
|
|
2
|
+
|
|
3
|
+
ATTR is a relatively generic primitive that means:
|
|
4
|
+
|
|
5
|
+
1. It expresses one of multiple attributes composed of a KEY-VALUE pair.
|
|
6
|
+
2. It can be displayed on the canvas and controls what content is displayed, as well as style and position.
|
|
7
|
+
|
|
8
|
+
When the affiliation ID is not specified, it defaults to the current block-level primitive.
|
|
9
|
+
|
|
10
|
+
```json
|
|
11
|
+
{ "type": "ATTR", "id": "UUID", "ticket": 1 }||
|
|
12
|
+
{ "partId": "", "groupId": 0, "locked": false, "zIndex": 0.1, "parentId": "UUID", "key":"string", "value":"string", "keyVisible":false, "valueVisible":false, "positionX":200, "positionY":200, "rotation":0, "color":null, "fillColor":null, "fontFamily":null, "fontSize":null, "strikeout":null, "underline":null, "italic":null, "fontWeight":null, "vAlign":0, "hAlign":2,}|
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
1. type attribute name: ATTR.
|
|
16
|
+
2. id unique ID.
|
|
17
|
+
3. ticket logical clock.
|
|
18
|
+
4. partId sub-library ID, exclusive to symbol pages; ignored on schematics.
|
|
19
|
+
5. groupId group ID, cannot be 0, empty by default when none.
|
|
20
|
+
6. locked whether locked.
|
|
21
|
+
7. zIndex Z-axis height.
|
|
22
|
+
8. parentId affiliation ID: the primitive it belongs to, `""` means it belongs to the current block. _Default block is the file._
|
|
23
|
+
9. key attribute Key.
|
|
24
|
+
10. value attribute Value.
|
|
25
|
+
11. keyVisible whether to display Key.
|
|
26
|
+
12. valueVisible whether to display Value.
|
|
27
|
+
13. positionX position X: fixed to `null` for attributes that have never been displayed.
|
|
28
|
+
14. positionY position Y: fixed to `null` for attributes that have never been displayed.
|
|
29
|
+
15. rotation rotation angle, rotated around `position`.
|
|
30
|
+
16. color color.
|
|
31
|
+
17. fillColor background color.
|
|
32
|
+
18. fontFamily font name.
|
|
33
|
+
19. fontSize font size, same unit as coordinates.
|
|
34
|
+
20. strikeout whether to strike out.
|
|
35
|
+
21. underline whether to underline.
|
|
36
|
+
22. italic whether italic.
|
|
37
|
+
23. fontWeight whether bold.
|
|
38
|
+
24. vAlign vertical alignment: 0 top, 1 middle, 2 bottom.
|
|
39
|
+
25. hAlign horizontal alignment: 0 left, 1 center, 2 right.
|
|
40
|
+
|
|
41
|
+
When the attribute Value contains the `~` character, XTools needs to implement overline text from the start to the end: text is overlined starting at odd-numbered `~` and ending at even-numbered `~`.
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Common Format
|
|
2
|
+
|
|
3
|
+
This chapter details the format specification of the EasyEDA schematic file. Schematic files mainly consist of the following parts:
|
|
4
|
+
|
|
5
|
+
- **Common Configuration**: Document header and canvas configuration.
|
|
6
|
+
- **Structural Elements**: PART sub-libraries and GROUP combinations.
|
|
7
|
+
- **Attributes**: Primitive attribute definitions.
|
|
8
|
+
- **Wires**: Wires, buses, and bus entries.
|
|
9
|
+
- **Text**: Text elements.
|
|
10
|
+
- **Shapes**: Rectangles, polygons, circles, arcs, Bezier curves, ellipses.
|
|
11
|
+
- **Pins**: Pin definitions.
|
|
12
|
+
- **Components**: Schematic component instances.
|
|
13
|
+
- **Objects**: Binary objects (images, etc.).
|
|
14
|
+
- **Tables**: Tables and cells.
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## Document Header
|
|
18
|
+
|
|
19
|
+
```json
|
|
20
|
+
{ "type": "DOCHEAD" }||{ "docType": "SCH_PAGE", "uuid": "UUID", "client": "clientID" }|
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
```json
|
|
24
|
+
{ "type": "DOCHEAD" }||{ "docType": "SYMBOL", "uuid": "UUID", "client": "clientID" }|
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
- type: "DOCHEAD", document header identifier.
|
|
28
|
+
- docType: document type, "SCH_PAGE": schematic, "SYMBOL": symbol.
|
|
29
|
+
- uuid: document unique ID, unique within the project.
|
|
30
|
+
- client: terminal identifier for eventual consistency.
|
|
31
|
+
|
|
32
|
+
## Canvas Configuration
|
|
33
|
+
|
|
34
|
+
Editor additional information, used for data analysis and other functions. Currently occupied fields:
|
|
35
|
+
|
|
36
|
+
```json
|
|
37
|
+
{ "type": "CANVAS", "ticket": 1 }||
|
|
38
|
+
{
|
|
39
|
+
"originX":0,
|
|
40
|
+
"originY":0,
|
|
41
|
+
}|
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
1. type: "CANVAS", canvas configuration identifier.
|
|
45
|
+
2. ticket logical clock.
|
|
46
|
+
3. originX canvas origin X.
|
|
47
|
+
4. originY canvas origin Y.
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# COMPONENT
|
|
2
|
+
|
|
3
|
+
- `COMPONENT` references a Symbol. Since a Symbol supports multiple Parts, it carries a `sub-library ID` to indicate which one; for a single-Part device, the default value `""` is used.
|
|
4
|
+
- A `COMPONENT` can bind many `ATTR`s; specific attribute behavior is defined by the tool.
|
|
5
|
+
|
|
6
|
+
### Symbol Types
|
|
7
|
+
|
|
8
|
+
| Symbol Type ID | Symbol Type | Description |
|
|
9
|
+
| :-------------- | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
10
|
+
| 2 | Part Symbol | Common device. |
|
|
11
|
+
| 17 | Block Symbol | Hierarchical symbol. |
|
|
12
|
+
| 18 | NetFlag Symbol | Global net symbol. |
|
|
13
|
+
| 19 | NetPort Symbol | Hierarchical net export symbol. |
|
|
14
|
+
| 20 | Sheet Symbol | Provides a reuse mechanism for schematic sheets. |
|
|
15
|
+
| 21 | NoneElec Symbol | Non-electrical symbol. NoneElec is a class of non-electrical primitives without `PIN`.<br>Can also be used as a reuse mechanism for special icons, copyright statements, etc.<br>NoneElec stands for None Electrical. |
|
|
16
|
+
| 22 | Short Symbol | Short Symbol is a special Symbol that must have two `PIN`s.<br>All nets connected to the `PIN`s of the same `Short Symbol` are electrically shorted.<br>For example, if net A is connected to PIN1 and net B to PIN2, A and B are the same net. |
|
|
17
|
+
|
|
18
|
+
### Component Primitive
|
|
19
|
+
|
|
20
|
+
```json
|
|
21
|
+
{ "type": "COMPONENT", "id": "UUID", "ticket": 1 }||
|
|
22
|
+
{
|
|
23
|
+
"partId": "e176",
|
|
24
|
+
"groupId": 0,
|
|
25
|
+
"positionX": 300,
|
|
26
|
+
"positionY": 200,
|
|
27
|
+
"rotation": 15,
|
|
28
|
+
"isMirror": false,
|
|
29
|
+
"data": {},
|
|
30
|
+
}|
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
1. type COMPONENT identifier: COMPONENT.
|
|
34
|
+
2. id ID, unique within the file.
|
|
35
|
+
3. ticket logical clock.
|
|
36
|
+
4. partId sub-library ID.
|
|
37
|
+
5. groupId group ID, cannot be 0, empty by default when none.
|
|
38
|
+
6. zIndex Z-axis height: all non-attribute child elements are distributed within Z0 ~ Z9, e.g. Z of 23.554 means child elements are auto-distributed within 23.5540 ~ 23.5549.
|
|
39
|
+
7. positionX position X.
|
|
40
|
+
8. positionY position Y.
|
|
41
|
+
9. rotation rotation angle, around `position`.
|
|
42
|
+
10. isMirror whether mirrored.
|
|
43
|
+
11. data pure data attributes: additional information for internal editor logic.
|
|
44
|
+
|
|
45
|
+
The Symbol referenced by a Component is transformed in the following order:
|
|
46
|
+
|
|
47
|
+
1. Rotate counter-clockwise around the origin (0,0) by the `rotation angle`.
|
|
48
|
+
2. If `isMirror` is `1`, mirror horizontally around the Y-axis at the origin (0,0).
|
|
49
|
+
3. Translate by `position`.
|
|
50
|
+
|
|
51
|
+
Or equivalently (but more cumbersome to implement):
|
|
52
|
+
|
|
53
|
+
1. Translate by `position`.
|
|
54
|
+
2. Rotate counter-clockwise around `position` by the `rotation angle`.
|
|
55
|
+
3. If `isMirror` is `1`, mirror horizontally around the Y-axis at `position`.
|
|
56
|
+
|
|
57
|
+
```json
|
|
58
|
+
{ "type": "ATTR", "id": "e187", "ticket": 1 }||
|
|
59
|
+
{ "partId": "", "groupId": 0, "locked": true, "zIndex": 0.1, "parentId": "e176", "key":"Device", "value":"device-uuid-1", "keyVisible":true, "valueVisible":true, "positionX":300, "positionY":200, "rotation":0, "color":null, "fillColor":null, "fontFamily":null, "fontSize":null, "strikeout":null, "underline":null, "italic":null, "fontWeight":null, "vAlign":0, "hAlign":2,}|
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Device uuid, consistent with the file name corresponding to the device in project.json.
|
|
63
|
+
|
|
64
|
+
```json
|
|
65
|
+
{ "type": "ATTR", "id": "e188", "ticket": 1 }||
|
|
66
|
+
{ "partId": "", "groupId": 0, "locked": true, "zIndex": 0.1, "parentId": "e176", "key":"Symbol", "value":"symbol-uuid-1", "keyVisible":true, "valueVisible":true, "positionX":300, "positionY":200, "rotation":0, "color":null, "fillColor":null, "fontFamily":null, "fontSize":null, "strikeout":null, "underline":null, "italic":null, "fontWeight":null, "vAlign":0, "hAlign":2,}|
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
An `ATTR` inside `COMPONENT` with the same name as one in the template will override it. Overriding Symbol affects the binding between the device and the symbol.
|
|
70
|
+
|
|
71
|
+
```json
|
|
72
|
+
{ "type": "ATTR", "id": "e188", "ticket": 1 }||
|
|
73
|
+
{ "partId": "", "groupId": 0, "locked": true, "zIndex": 0.1, "parentId": "e176", "key":"Footprint", "value":"footprint-uuid-1", "keyVisible":true, "valueVisible":true, "positionX":300, "positionY":200, "rotation":0, "color":null, "fillColor":null, "fontFamily":null, "fontSize":null, "strikeout":null, "underline":null, "italic":null, "fontWeight":null, "vAlign":0, "hAlign":2,}|
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
An `ATTR` inside `COMPONENT` with the same name as one in the template will override it. Overriding Footprint affects the binding between the device and the footprint.
|
|
77
|
+
|
|
78
|
+
```json
|
|
79
|
+
{ "type": "ATTR", "id": "e188", "ticket": 1 }||
|
|
80
|
+
{ "partId": "", "groupId": 0, "locked": true, "zIndex": 0.1, "parentId": "e176", "key":"Designator", "value":"U1", "keyVisible":true, "valueVisible":true, "positionX":300, "positionY":200, "rotation":0, "color":null, "fillColor":null, "fontFamily":null, "fontSize":null, "strikeout":null, "underline":null, "italic":null, "fontWeight":null, "vAlign":0, "hAlign":2,}|
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
An `ATTR` inside `COMPONENT` with the same name as one in the template will override it.
|
|
84
|
+
|
|
85
|
+
```json
|
|
86
|
+
{ "type": "ATTR", "id": "e180", "ticket": 1 }||
|
|
87
|
+
{ "partId": "", "groupId": 0, "locked": true, "zIndex": 0.1, "parentId": "e176e5", "key":"NUMBER", "value":"1", "keyVisible":true, "valueVisible":true, "positionX":108, "positionY":804.5, "rotation":0, "color":null, "fillColor":null, "fontFamily":null, "fontSize":null, "strikeout":null, "underline":null, "italic":null, "fontWeight":null, "vAlign":0, "hAlign":2,}|
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
The key to `PIN` attribute override lies in the `parentId` of `ATTR`.
|
|
91
|
+
The ID has two parts, e.g. `e176e5`, where `e176` is the `COMPONENT` ID and `e5` is the `PIN` ID in the template.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# SCH Schematic Type Document
|
|
2
|
+
|
|
3
|
+
This chapter details the format specification of the EasyEDA schematic file. Schematic files mainly consist of the following parts:
|
|
4
|
+
|
|
5
|
+
- [Common Format](/en/format/schematic/common.md): document header and canvas configuration.
|
|
6
|
+
- [Structural Elements](/en/format/schematic/structure.md): PART sub-library and GROUP combination.
|
|
7
|
+
- [Attributes](/en/format/schematic/attr.md): primitive attribute definitions.
|
|
8
|
+
- [Wires](/en/format/schematic/wire.md): wires, buses, and bus entries.
|
|
9
|
+
- [Text](/en/format/schematic/text.md): text elements.
|
|
10
|
+
- [Shapes](/en/format/schematic/shape.md): rectangles, polygons, circles, arcs, Bezier curves, ellipses.
|
|
11
|
+
- [Pins](/en/format/schematic/pin.md): pin definitions.
|
|
12
|
+
- [Components](/en/format/schematic/component.md): schematic component instances.
|
|
13
|
+
- [Objects](/en/format/schematic/obj.md): binary objects (images, etc.).
|
|
14
|
+
- [Tables](/en/format/schematic/table.md): tables and cells.
|