@windypro-rourou/dsh-eda 0.1.4 → 0.1.5
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 +1 -1
- package/lib/capabilities.js +3 -2
- package/lib/client.js +33 -0
- package/lib/index.js +89 -2
- package/package.json +10 -1
- package/skill/INDEX.md +10 -8
- package/skill/README.md +125 -0
- package/skill/README.zh-Hans.md +125 -0
- package/skill/SKILL.md +746 -746
- package/skill/format/index.md +152 -152
- package/skill/format/pcb/3d.md +166 -166
- package/skill/format/pcb/attr.md +63 -63
- package/skill/format/pcb/common.md +306 -306
- package/skill/format/pcb/component.md +132 -132
- package/skill/format/pcb/dimension.md +58 -58
- package/skill/format/pcb/index.md +17 -17
- package/skill/format/pcb/obj.md +43 -43
- package/skill/format/pcb/pad_via.md +151 -151
- package/skill/format/pcb/panel.md +64 -64
- package/skill/format/pcb/partition.md +43 -43
- package/skill/format/pcb/primitive.md +196 -196
- package/skill/format/pcb/rule.md +71 -71
- package/skill/format/pcb/shape.md +441 -441
- package/skill/format/pcb/text.md +62 -62
- package/skill/format/project/blob.md +30 -30
- package/skill/format/project/common.md +42 -42
- package/skill/format/project/group.md +62 -62
- package/skill/format/project/index.md +12 -12
- package/skill/format/project/instance.md +32 -32
- package/skill/format/project/meta.md +189 -189
- package/skill/format/project/variant.md +30 -30
- package/skill/format/schematic/attr.md +41 -41
- package/skill/format/schematic/common.md +47 -47
- package/skill/format/schematic/component.md +91 -91
- package/skill/format/schematic/index.md +14 -14
- package/skill/format/schematic/obj.md +41 -41
- package/skill/format/schematic/pin.md +59 -59
- package/skill/format/schematic/shape.md +231 -231
- package/skill/format/schematic/structure.md +53 -53
- package/skill/format/schematic/table.md +109 -109
- package/skill/format/schematic/text.md +47 -47
- package/skill/format/schematic/wire.md +132 -132
- package/skill/guide/ancillary-projects/easyeda-api-sdk.md +1 -0
- package/skill/guide/ancillary-projects/pro-api-types.md +5 -5
- package/skill/guide/ancillary-projects.md +10 -10
- package/skill/guide/cli.md +1510 -0
- package/skill/guide/error-handling.md +38 -38
- package/skill/guide/extension-json.md +135 -135
- package/skill/guide/extensions-marketplace.md +61 -61
- package/skill/guide/how-to-start.md +316 -301
- package/skill/guide/i18n.md +57 -57
- package/skill/guide/index.md +7 -7
- package/skill/guide/inline-frame.md +20 -20
- package/skill/guide/invoke-apis.md +81 -81
- package/skill/guide/stability.md +37 -37
- package/skill/references/_index.md +471 -398
- package/skill/references/_quick-reference.md +3103 -3028
- package/skill/references/classes/DMT_Board.md +537 -533
- package/skill/references/classes/DMT_EditorControl.md +1736 -1736
- package/skill/references/classes/DMT_Event.md +356 -356
- package/skill/references/classes/DMT_Folder.md +775 -775
- package/skill/references/classes/DMT_Panel.md +531 -531
- package/skill/references/classes/DMT_Pcb.md +579 -575
- package/skill/references/classes/DMT_Project.md +734 -573
- package/skill/references/classes/DMT_Schematic.md +1482 -1477
- package/skill/references/classes/DMT_SelectControl.md +96 -96
- package/skill/references/classes/DMT_Team.md +172 -172
- package/skill/references/classes/DMT_Workspace.md +198 -198
- package/skill/references/classes/EDA.md +1001 -961
- package/skill/references/classes/IPCB_ComplexPolygon.md +299 -299
- package/skill/references/classes/IPCB_Polygon.md +175 -175
- package/skill/references/classes/IPCB_PrimitiveArc.md +1901 -1901
- package/skill/references/classes/IPCB_PrimitiveAttribute.md +2993 -2993
- package/skill/references/classes/IPCB_PrimitiveComponent.md +2624 -2627
- package/skill/references/classes/IPCB_PrimitiveComponentPad.md +410 -410
- package/skill/references/classes/IPCB_PrimitiveDimension.md +1419 -1419
- package/skill/references/classes/IPCB_PrimitiveFill.md +1325 -1325
- package/skill/references/classes/IPCB_PrimitiveImage.md +1461 -1461
- package/skill/references/classes/IPCB_PrimitiveLine.md +1639 -1639
- package/skill/references/classes/IPCB_PrimitiveObject.md +1700 -1700
- package/skill/references/classes/IPCB_PrimitivePad.md +3155 -3155
- package/skill/references/classes/IPCB_PrimitivePolyline.md +1193 -1193
- package/skill/references/classes/IPCB_PrimitivePour.md +1858 -1858
- package/skill/references/classes/IPCB_PrimitivePoured.md +556 -556
- package/skill/references/classes/IPCB_PrimitiveRegion.md +1332 -1332
- package/skill/references/classes/IPCB_PrimitiveString.md +2315 -2315
- package/skill/references/classes/IPCB_PrimitiveVia.md +1588 -1588
- package/skill/references/classes/ISCH_PrimitiveArc.md +1676 -1676
- package/skill/references/classes/ISCH_PrimitiveAttribute.md +2541 -2541
- package/skill/references/classes/ISCH_PrimitiveBus.md +973 -973
- package/skill/references/classes/ISCH_PrimitiveCbbSymbolComponent.md +260 -260
- package/skill/references/classes/ISCH_PrimitiveCircle.md +1392 -1392
- package/skill/references/classes/ISCH_PrimitiveComponent.md +2910 -2913
- package/skill/references/classes/ISCH_PrimitiveComponentPin.md +155 -155
- package/skill/references/classes/ISCH_PrimitiveObject.md +960 -960
- package/skill/references/classes/ISCH_PrimitivePin.md +2402 -2402
- package/skill/references/classes/ISCH_PrimitivePolygon.md +1028 -1028
- package/skill/references/classes/ISCH_PrimitiveRectangle.md +1777 -1777
- package/skill/references/classes/ISCH_PrimitiveText.md +1771 -1771
- package/skill/references/classes/ISCH_PrimitiveWire.md +973 -973
- package/skill/references/classes/LIB_3DModel.md +782 -780
- package/skill/references/classes/LIB_Cbb.md +957 -957
- package/skill/references/classes/LIB_Classification.md +969 -965
- package/skill/references/classes/LIB_Device.md +1222 -1221
- package/skill/references/classes/LIB_Footprint.md +1298 -1153
- package/skill/references/classes/LIB_LibrariesList.md +361 -329
- package/skill/references/classes/LIB_PanelLibrary.md +855 -855
- package/skill/references/classes/LIB_SelectControl.md +89 -89
- package/skill/references/classes/LIB_SimulationModel.md +807 -821
- package/skill/references/classes/LIB_Symbol.md +1341 -1195
- package/skill/references/classes/PCB_Document.md +1770 -1754
- package/skill/references/classes/PCB_Drc.md +3379 -3375
- package/skill/references/classes/PCB_Event.md +1166 -1081
- package/skill/references/classes/PCB_ImageTool.md +363 -0
- package/skill/references/classes/PCB_Layer.md +1915 -1911
- package/skill/references/classes/PCB_ManufactureData.md +2968 -2968
- package/skill/references/classes/PCB_MathPolygon.md +916 -785
- package/skill/references/classes/PCB_Net.md +1128 -1128
- package/skill/references/classes/PCB_Primitive.md +217 -217
- package/skill/references/classes/PCB_PrimitiveArc.md +820 -894
- package/skill/references/classes/PCB_PrimitiveAttribute.md +635 -717
- package/skill/references/classes/PCB_PrimitiveComponent.md +1050 -1050
- package/skill/references/classes/PCB_PrimitiveDimension.md +789 -833
- package/skill/references/classes/PCB_PrimitiveFill.md +783 -861
- package/skill/references/classes/PCB_PrimitiveImage.md +803 -875
- package/skill/references/classes/PCB_PrimitiveLine.md +787 -858
- package/skill/references/classes/PCB_PrimitiveObject.md +796 -800
- package/skill/references/classes/PCB_PrimitivePad.md +947 -944
- package/skill/references/classes/PCB_PrimitivePolyline.md +744 -819
- package/skill/references/classes/PCB_PrimitivePour.md +808 -845
- package/skill/references/classes/PCB_PrimitivePoured.md +363 -363
- package/skill/references/classes/PCB_PrimitiveRegion.md +765 -799
- package/skill/references/classes/PCB_PrimitiveString.md +828 -910
- package/skill/references/classes/PCB_PrimitiveVia.md +761 -765
- package/skill/references/classes/PCB_RayTracerEngine.md +603 -263
- package/skill/references/classes/PCB_SelectControl.md +495 -495
- package/skill/references/classes/PCB_Tool.md +9 -0
- package/skill/references/classes/PNL_Document.md +83 -83
- package/skill/references/classes/SCH_Document.md +797 -809
- package/skill/references/classes/SCH_Drc.md +246 -242
- package/skill/references/classes/SCH_Event.md +583 -583
- package/skill/references/classes/SCH_ManufactureData.md +1209 -1205
- package/skill/references/classes/SCH_Net.md +200 -200
- package/skill/references/classes/SCH_Netlist.md +191 -191
- package/skill/references/classes/SCH_Primitive.md +337 -337
- package/skill/references/classes/SCH_PrimitiveArc.md +686 -692
- package/skill/references/classes/SCH_PrimitiveAttribute.md +579 -590
- package/skill/references/classes/SCH_PrimitiveBus.md +618 -624
- package/skill/references/classes/SCH_PrimitiveCircle.md +667 -683
- package/skill/references/classes/SCH_PrimitiveComponent.md +2256 -2240
- package/skill/references/classes/SCH_PrimitiveObject.md +666 -666
- package/skill/references/classes/SCH_PrimitivePin.md +737 -754
- package/skill/references/classes/SCH_PrimitivePolygon.md +621 -627
- package/skill/references/classes/SCH_PrimitiveRectangle.md +715 -731
- package/skill/references/classes/SCH_PrimitiveText.md +736 -746
- package/skill/references/classes/SCH_PrimitiveWire.md +701 -703
- package/skill/references/classes/SCH_SelectControl.md +520 -520
- package/skill/references/classes/SCH_SimulationEngine.md +133 -133
- package/skill/references/classes/SCH_Utils.md +121 -121
- package/skill/references/classes/SYS_ClientUrl.md +173 -173
- package/skill/references/classes/SYS_Dialog.md +825 -825
- package/skill/references/classes/SYS_Environment.md +640 -502
- package/skill/references/classes/SYS_ExternalApi.md +246 -0
- package/skill/references/classes/SYS_FileManager.md +1664 -1686
- package/skill/references/classes/SYS_FileSystem.md +1366 -1171
- package/skill/references/classes/SYS_FontManager.md +224 -224
- package/skill/references/classes/SYS_FormatConversion.md +349 -349
- package/skill/references/classes/SYS_HeaderMenu.md +480 -479
- package/skill/references/classes/SYS_Help.md +141 -0
- package/skill/references/classes/SYS_I18n.md +861 -861
- package/skill/references/classes/SYS_IFrame.md +541 -535
- package/skill/references/classes/SYS_LoadingAndProgressBar.md +246 -246
- package/skill/references/classes/SYS_Log.md +422 -424
- package/skill/references/classes/SYS_Math.md +1565 -1565
- package/skill/references/classes/SYS_Message.md +363 -363
- package/skill/references/classes/SYS_MessageBox.md +285 -285
- package/skill/references/classes/SYS_MessageBus.md +1618 -1618
- package/skill/references/classes/SYS_PanelControl.md +696 -696
- package/skill/references/classes/SYS_RightClickMenu.md +175 -175
- package/skill/references/classes/SYS_Setting.md +134 -85
- package/skill/references/classes/SYS_ShortcutKey.md +623 -623
- package/skill/references/classes/SYS_Storage.md +484 -484
- package/skill/references/classes/SYS_Timer.md +447 -447
- package/skill/references/classes/SYS_ToastMessage.md +194 -194
- package/skill/references/classes/SYS_Tool.md +317 -241
- package/skill/references/classes/SYS_Unit.md +594 -594
- package/skill/references/classes/SYS_WebSocket.md +401 -401
- package/skill/references/classes/SYS_Window.md +849 -850
- package/skill/references/enums/EDMT_EditorDocumentType.md +324 -278
- package/skill/references/enums/EDMT_EditorSplitScreenDirection.md +51 -47
- package/skill/references/enums/EDMT_EditorTabEventType.md +68 -62
- package/skill/references/enums/EDMT_IndicatorMarkerType.md +90 -80
- package/skill/references/enums/EDMT_ItemType.md +181 -157
- package/skill/references/enums/EDMT_ProjectCollaborationMode.md +51 -47
- package/skill/references/enums/EDMT_ProjectFileFormat.md +60 -0
- package/skill/references/enums/EDMT_ProjectReadyState.md +82 -0
- package/skill/references/enums/ELIB_DeviceJlcLibraryCategory.md +51 -47
- package/skill/references/enums/ELIB_LibraryType.md +129 -113
- package/skill/references/enums/ELIB_PreviewType.md +77 -69
- package/skill/references/enums/ELIB_SimulationModelType.md +51 -47
- package/skill/references/enums/ELIB_SymbolType.md +142 -124
- package/skill/references/enums/EPCB_AutoRoutingCornerStyle.md +51 -47
- package/skill/references/enums/EPCB_AutoRoutingExistingPrimitiveMode.md +51 -47
- package/skill/references/enums/EPCB_AutoRoutingOptimization.md +51 -47
- package/skill/references/enums/EPCB_DocumentCanvasUpdateCalculationActiveStatus.md +51 -47
- package/skill/references/enums/EPCB_DocumentRatlineCalculatingActiveStatus.md +55 -51
- package/skill/references/enums/EPCB_InactiveLayerDisplayMode.md +64 -58
- package/skill/references/enums/EPCB_LayerColorConfiguration.md +90 -80
- package/skill/references/enums/EPCB_LayerId.md +1169 -881
- package/skill/references/enums/EPCB_LayerStatus.md +64 -58
- package/skill/references/enums/EPCB_LayerType.md +129 -113
- package/skill/references/enums/EPCB_MouseEventType.md +64 -58
- package/skill/references/enums/EPCB_NetEventType.md +64 -58
- package/skill/references/enums/EPCB_PcbPlateType.md +51 -47
- package/skill/references/enums/EPCB_PdfOutputMethod.md +64 -58
- package/skill/references/enums/EPCB_PrimitiveArcInteractiveMode.md +51 -47
- package/skill/references/enums/EPCB_PrimitiveDimensionType.md +64 -58
- package/skill/references/enums/EPCB_PrimitiveEventType.md +64 -58
- package/skill/references/enums/EPCB_PrimitiveFillMode.md +68 -62
- package/skill/references/enums/EPCB_PrimitivePadHeatWeldingConnectionMethod.md +64 -58
- package/skill/references/enums/EPCB_PrimitivePadHoleType.md +64 -58
- package/skill/references/enums/EPCB_PrimitivePadShapeType.md +90 -80
- package/skill/references/enums/EPCB_PrimitivePadType.md +64 -58
- package/skill/references/enums/EPCB_PrimitivePourFillMethod.md +64 -58
- package/skill/references/enums/EPCB_PrimitiveRegionRuleType.md +107 -95
- package/skill/references/enums/EPCB_PrimitiveStringAlignMode.md +142 -124
- package/skill/references/enums/EPCB_PrimitiveType.md +233 -201
- package/skill/references/enums/EPCB_PrimitiveViaType.md +64 -58
- package/skill/references/enums/ESCH_DynamicSimulationEnginePullEventType.md +116 -102
- package/skill/references/enums/ESCH_DynamicSimulationEnginePushEventType.md +90 -80
- package/skill/references/enums/ESCH_ExportDocumentFileType.md +64 -58
- package/skill/references/enums/ESCH_MouseEventType.md +51 -47
- package/skill/references/enums/ESCH_PrimitiveComponentType.md +142 -124
- package/skill/references/enums/ESCH_PrimitiveEventType.md +77 -69
- package/skill/references/enums/ESCH_PrimitiveFillStyle.md +129 -113
- package/skill/references/enums/ESCH_PrimitiveLineType.md +77 -69
- package/skill/references/enums/ESCH_PrimitivePinShape.md +77 -69
- package/skill/references/enums/ESCH_PrimitivePinType.md +168 -146
- package/skill/references/enums/ESCH_PrimitiveTextAlignMode.md +142 -124
- package/skill/references/enums/ESCH_PrimitiveType.md +207 -179
- package/skill/references/enums/ESCH_SimulationNetlistType.md +38 -36
- package/skill/references/enums/ESCH_SpiceSimulationEnginePullEventType.md +51 -47
- package/skill/references/enums/ESCH_SpiceSimulationEnginePushEventType.md +77 -69
- package/skill/references/enums/ESYS_BottomPanelTab.md +94 -80
- package/skill/references/enums/ESYS_HeaderMenuEnvironment.md +181 -157
- package/skill/references/enums/ESYS_ImportProjectBoardOutlineSource.md +55 -51
- package/skill/references/enums/ESYS_ImportProjectImportOption.md +64 -58
- package/skill/references/enums/ESYS_ImportProjectSchematicObjectStyle.md +51 -47
- package/skill/references/enums/ESYS_ImportProjectViaSolderMaskExpansion.md +55 -51
- package/skill/references/enums/ESYS_JobState.md +95 -0
- package/skill/references/enums/ESYS_LeftPanelTab.md +94 -80
- package/skill/references/enums/ESYS_LogType.md +77 -102
- package/skill/references/enums/ESYS_NetlistType.md +129 -113
- package/skill/references/enums/ESYS_PanelPosition.md +69 -0
- package/skill/references/enums/ESYS_PanelTab.md +368 -0
- package/skill/references/enums/ESYS_RightPanelTab.md +237 -201
- package/skill/references/enums/ESYS_ShortcutKeyEffectiveEditorRange.md +220 -190
- package/skill/references/enums/ESYS_ShortcutKeyEffectiveEditorScene.md +103 -91
- package/skill/references/enums/ESYS_StartPageQuickStartItem.md +237 -205
- package/skill/references/enums/ESYS_Theme.md +51 -47
- package/skill/references/enums/ESYS_ToastMessageType.md +90 -80
- package/skill/references/enums/ESYS_Unit.md +116 -102
- package/skill/references/enums/ESYS_WindowEventType.md +64 -47
- package/skill/references/enums/ESYS_WindowOpenTarget.md +51 -47
- package/skill/references/enums/NetportDeviceName.md +146 -146
- package/skill/references/enums/SchToolBarDeviceName.md +278 -278
- package/skill/references/interfaces/BoardProps.md +169 -169
- package/skill/references/interfaces/BorderConfig.md +109 -0
- package/skill/references/interfaces/ButtonProps.md +196 -169
- package/skill/references/interfaces/CellClickInfo.md +142 -0
- package/skill/references/interfaces/CellCoord.md +88 -0
- package/skill/references/interfaces/CheckBoxProps.md +223 -196
- package/skill/references/interfaces/CheckChangeDetail.md +88 -0
- package/skill/references/interfaces/CheckboxEditConfig.md +159 -0
- package/skill/references/interfaces/ClipboardCellData.md +142 -0
- package/skill/references/interfaces/ClipboardConfig.md +115 -0
- package/skill/references/interfaces/ColorPickerProps.md +169 -0
- package/skill/references/interfaces/ColumnDef.md +605 -0
- package/skill/references/interfaces/ColumnEditTrigger.md +57 -0
- package/skill/references/interfaces/ColumnGroupDef.md +192 -0
- package/skill/references/interfaces/ColumnResizeConfig.md +142 -0
- package/skill/references/interfaces/ComponentPropsMap.md +517 -448
- package/skill/references/interfaces/CustomHeaderConfig.md +169 -0
- package/skill/references/interfaces/DialogProps.md +385 -385
- package/skill/references/interfaces/DragSortConfig.md +115 -0
- package/skill/references/interfaces/EditingConfig.md +196 -0
- package/skill/references/interfaces/FilteringConfig.md +250 -0
- package/skill/references/interfaces/FixedColumnConfig.md +88 -0
- package/skill/references/interfaces/FlexItemProps.md +116 -116
- package/skill/references/interfaces/FlexProps.md +224 -224
- package/skill/references/interfaces/GridItemProps.md +143 -143
- package/skill/references/interfaces/GridProps.md +143 -143
- package/skill/references/interfaces/IDMT_BoardItem.md +171 -171
- package/skill/references/interfaces/IDMT_BriefProjectItem.md +171 -171
- package/skill/references/interfaces/IDMT_EditorDocumentItem.md +169 -169
- package/skill/references/interfaces/IDMT_EditorSplitScreenItem.md +173 -173
- package/skill/references/interfaces/IDMT_EditorTabItem.md +169 -169
- package/skill/references/interfaces/IDMT_FolderItem.md +225 -225
- package/skill/references/interfaces/IDMT_IndicatorMarkerShape.md +393 -393
- package/skill/references/interfaces/IDMT_PanelItem.md +144 -144
- package/skill/references/interfaces/IDMT_PcbItem.md +171 -171
- package/skill/references/interfaces/IDMT_ProjectItem.md +143 -143
- package/skill/references/interfaces/IDMT_SchematicItem.md +225 -225
- package/skill/references/interfaces/IDMT_SchematicPageItem.md +198 -198
- package/skill/references/interfaces/IDMT_TeamItem.md +144 -144
- package/skill/references/interfaces/IDMT_WorkspaceItem.md +117 -117
- package/skill/references/interfaces/IDesignPortal.md +103 -103
- package/skill/references/interfaces/ILIB_3DModelItem.md +198 -198
- package/skill/references/interfaces/ILIB_3DModelSearchItem.md +277 -277
- package/skill/references/interfaces/ILIB_CbbItem.md +225 -225
- package/skill/references/interfaces/ILIB_CbbSearchItem.md +277 -277
- package/skill/references/interfaces/ILIB_ClassificationIndex.md +150 -150
- package/skill/references/interfaces/ILIB_ClassificationNode.md +98 -0
- package/skill/references/interfaces/ILIB_DeviceAssociationItem.md +210 -210
- package/skill/references/interfaces/ILIB_DeviceExtendPropertyItem.md +304 -304
- package/skill/references/interfaces/ILIB_DeviceItem.md +279 -279
- package/skill/references/interfaces/ILIB_DevicePropertiesForSearch.md +250 -250
- package/skill/references/interfaces/ILIB_DeviceSearchItem.md +521 -521
- package/skill/references/interfaces/ILIB_ExtendLibrary3DModelFunctions.md +64 -64
- package/skill/references/interfaces/ILIB_ExtendLibraryCbbFunctions.md +93 -99
- package/skill/references/interfaces/ILIB_ExtendLibraryClassificationIndex.md +150 -150
- package/skill/references/interfaces/ILIB_ExtendLibraryDeviceFunctions.md +143 -157
- package/skill/references/interfaces/ILIB_ExtendLibraryFootprintFunctions.md +63 -63
- package/skill/references/interfaces/ILIB_ExtendLibraryFunctions.md +123 -123
- package/skill/references/interfaces/ILIB_ExtendLibraryItem.md +97 -97
- package/skill/references/interfaces/ILIB_ExtendLibraryItemIndex.md +98 -98
- package/skill/references/interfaces/ILIB_ExtendLibrarySearchProperty.md +115 -115
- package/skill/references/interfaces/ILIB_ExtendLibrarySearchResult.md +169 -169
- package/skill/references/interfaces/ILIB_ExtendLibrarySearchResultDataLine.md +234 -234
- package/skill/references/interfaces/ILIB_ExtendLibrarySymbolFunctions.md +91 -105
- package/skill/references/interfaces/ILIB_ExtendLibraryUserIndex.md +96 -96
- package/skill/references/interfaces/ILIB_FootprintItem.md +256 -198
- package/skill/references/interfaces/ILIB_FootprintPropertiesForSearch.md +61 -61
- package/skill/references/interfaces/ILIB_FootprintSearchItem.md +277 -277
- package/skill/references/interfaces/ILIB_LibraryInfo.md +92 -92
- package/skill/references/interfaces/ILIB_LibraryItem.md +115 -115
- package/skill/references/interfaces/ILIB_PanelLibraryItem.md +198 -198
- package/skill/references/interfaces/ILIB_PanelLibrarySearchItem.md +277 -277
- package/skill/references/interfaces/ILIB_RegisterExtendLibraryProps.md +71 -0
- package/skill/references/interfaces/ILIB_SimulationModelItem.md +306 -306
- package/skill/references/interfaces/ILIB_SimulationModelSearchItem.md +304 -304
- package/skill/references/interfaces/ILIB_SymbolItem.md +306 -279
- package/skill/references/interfaces/ILIB_SymbolPropertiesForSearch.md +61 -61
- package/skill/references/interfaces/ILIB_SymbolSearchItem.md +304 -304
- package/skill/references/interfaces/IPCB_AutoLayoutResult.md +169 -169
- package/skill/references/interfaces/IPCB_AutoRoutingProps.md +220 -220
- package/skill/references/interfaces/IPCB_AutoRoutingResult.md +169 -169
- package/skill/references/interfaces/IPCB_BomPropertiesTableColumns.md +169 -169
- package/skill/references/interfaces/IPCB_DifferentialPairItem.md +115 -115
- package/skill/references/interfaces/IPCB_DiscretizeOptions.md +65 -65
- package/skill/references/interfaces/IPCB_DiscretizedPoint.md +88 -88
- package/skill/references/interfaces/IPCB_EqualLengthNetGroupItem.md +115 -115
- package/skill/references/interfaces/IPCB_LayerItem.md +277 -277
- package/skill/references/interfaces/IPCB_NetClassItem.md +115 -115
- package/skill/references/interfaces/IPCB_NetInfo.md +115 -115
- package/skill/references/interfaces/IPCB_PadPairGroupItem.md +88 -88
- package/skill/references/interfaces/IPCB_PadPairMinWireLengthItem.md +88 -88
- package/skill/references/interfaces/IPCB_PhysicalStackingConfiguration.md +115 -115
- package/skill/references/interfaces/IPCB_Primitive.md +218 -218
- package/skill/references/interfaces/IPCB_PrimitiveAPI.md +174 -175
- package/skill/references/interfaces/IPCB_PrimitivePadHeatWelding.md +151 -151
- package/skill/references/interfaces/IPCB_PrimitivePouredPourFill.md +142 -142
- package/skill/references/interfaces/IPCB_PrimitiveSolderMaskAndPasteMaskExpansion.md +154 -154
- package/skill/references/interfaces/IPCB_RayTracerBackgroundConfig.md +223 -0
- package/skill/references/interfaces/IPCB_RayTracerLightConfig.md +412 -0
- package/skill/references/interfaces/IPCB_RayTracerMaterialConfig.md +547 -0
- package/skill/references/interfaces/IPCB_RayTracerPcbMaterialConfig.md +196 -0
- package/skill/references/interfaces/IPCB_RayTracerRenderConfigurations.md +200 -0
- package/skill/references/interfaces/IPCB_RayTracerRendererConfig.md +196 -0
- package/skill/references/interfaces/IPCB_RayTracerSceneElement.md +115 -0
- package/skill/references/interfaces/IPCB_RayTracerSceneElementTransform.md +123 -0
- package/skill/references/interfaces/IPCB_RayTracerTexture.md +88 -0
- package/skill/references/interfaces/IPCB_SubstratePhysicalProperties.md +88 -88
- package/skill/references/interfaces/IRawNet.md +103 -103
- package/skill/references/interfaces/IRawPureSchematic.md +80 -80
- package/skill/references/interfaces/IRawSchematic.md +103 -103
- package/skill/references/interfaces/IRawWire.md +149 -149
- package/skill/references/interfaces/ISCH_DrcError.md +142 -142
- package/skill/references/interfaces/ISCH_DrcErrorPrimitive.md +142 -142
- package/skill/references/interfaces/ISCH_ExportPngResolution.md +94 -94
- package/skill/references/interfaces/ISCH_NetInfo.md +88 -88
- package/skill/references/interfaces/ISCH_Primitive.md +218 -219
- package/skill/references/interfaces/ISCH_PrimitiveAPI.md +174 -175
- package/skill/references/interfaces/ISCH_ProjectNetInfo.md +142 -142
- package/skill/references/interfaces/ISCH_WireInfo.md +169 -169
- package/skill/references/interfaces/ISYS_ComparisonResponse.md +115 -0
- package/skill/references/interfaces/ISYS_ExtensionExternalApiIndex.md +13 -0
- package/skill/references/interfaces/ISYS_ExtensionRegisteredExternalApis.md +13 -0
- package/skill/references/interfaces/ISYS_ExternalApiHelp.md +173 -0
- package/skill/references/interfaces/ISYS_ExternalApiRegistration.md +146 -0
- package/skill/references/interfaces/ISYS_FileSystemFileList.md +169 -169
- package/skill/references/interfaces/ISYS_HeaderMenuSub1MenuItem.md +205 -174
- package/skill/references/interfaces/ISYS_HeaderMenuSub2MenuItem.md +178 -147
- package/skill/references/interfaces/ISYS_HeaderMenuTopMenuItem.md +115 -115
- package/skill/references/interfaces/ISYS_HeaderMenus.md +408 -408
- package/skill/references/interfaces/ISYS_HelpAudienceEntry.md +92 -0
- package/skill/references/interfaces/ISYS_HelpClassSummary.md +205 -0
- package/skill/references/interfaces/ISYS_HelpData.md +92 -0
- package/skill/references/interfaces/ISYS_HelpMethodDetail.md +310 -0
- package/skill/references/interfaces/ISYS_JobHandle.md +65 -0
- package/skill/references/interfaces/ISYS_JobLogEntry.md +142 -0
- package/skill/references/interfaces/ISYS_JobStatus.md +176 -0
- package/skill/references/interfaces/ISYS_LogLine.md +115 -115
- package/skill/references/interfaces/ISYS_MathBBox.md +142 -142
- package/skill/references/interfaces/ISYS_MathPoint.md +88 -88
- package/skill/references/interfaces/ISYS_MathPolygonWithHoles.md +92 -92
- package/skill/references/interfaces/ISYS_MessageBusTask.md +115 -115
- package/skill/references/interfaces/ISYS_MultilingualLanguagesData.md +12 -12
- package/skill/references/interfaces/ISYS_RightClickMenuItem.md +174 -174
- package/skill/references/interfaces/ISYS_ShortcutKeyData.md +169 -169
- package/skill/references/interfaces/ISYS_ShortcutKeyDataWithCallFn.md +62 -62
- package/skill/references/interfaces/ISYS_ShortcutKeyDataWithUserDefinedShortcutKey.md +62 -62
- package/skill/references/interfaces/ISYS_WindowEventListenerRemovableObject.md +109 -109
- package/skill/references/interfaces/IconProps.md +88 -88
- package/skill/references/interfaces/ImageProps.md +115 -115
- package/skill/references/interfaces/InputEditConfig.md +182 -0
- package/skill/references/interfaces/InputProps.md +547 -520
- package/skill/references/interfaces/KeyboardConfig.md +61 -0
- package/skill/references/interfaces/ListChildren.md +223 -223
- package/skill/references/interfaces/ListProps.md +250 -223
- package/skill/references/interfaces/ModalProps.md +358 -358
- package/skill/references/interfaces/NumberEditConfig.md +234 -0
- package/skill/references/interfaces/RadioGroupProps.md +196 -196
- package/skill/references/interfaces/RadioItem.md +115 -115
- package/skill/references/interfaces/RichTableProps.md +1357 -0
- package/skill/references/interfaces/RowMetaConfig.md +142 -0
- package/skill/references/interfaces/ScrollerProps.md +169 -169
- package/skill/references/interfaces/SelectEditConfig.md +211 -0
- package/skill/references/interfaces/SelectListItem.md +142 -142
- package/skill/references/interfaces/SelectOption.md +142 -0
- package/skill/references/interfaces/SelectProps.md +169 -169
- package/skill/references/interfaces/SelectionConfig.md +358 -0
- package/skill/references/interfaces/SliderProps.md +142 -0
- package/skill/references/interfaces/SlotProps.md +88 -88
- package/skill/references/interfaces/SortState.md +88 -0
- package/skill/references/interfaces/SortingConfig.md +169 -0
- package/skill/references/interfaces/StyleProps.md +439 -385
- package/skill/references/interfaces/TextAreaProps.md +196 -196
- package/skill/references/interfaces/TextProps.md +169 -169
- package/skill/references/interfaces/TextareaEditConfig.md +182 -0
- package/skill/references/interfaces/ValidationRule.md +223 -0
- package/skill/references/interfaces/VirtualScrollConfig.md +115 -0
- package/skill/references/types/Align.md +9 -0
- package/skill/references/types/CellContentType.md +9 -0
- package/skill/references/types/ColumnDefOrGroup.md +12 -0
- package/skill/references/types/ColumnEditConfig.md +13 -0
- package/skill/references/types/ColumnType.md +9 -0
- package/skill/references/types/DataChangeType.md +9 -0
- package/skill/references/types/FilterMatchMode.md +9 -0
- package/skill/references/types/RichTableRow.md +12 -0
- package/skill/references/types/Serializable.md +10 -0
- package/skill/references/types/SerializablePrimitive.md +9 -0
- package/skill/references/types/SortOrder.md +9 -0
- package/skill/references/types/TPCB_LayerTypesOfInnerLayer.md +11 -11
- package/skill/references/types/TPCB_LayersInTheSelectable.md +42 -42
- package/skill/references/types/TPCB_LayersOfComponent.md +11 -11
- package/skill/references/types/TPCB_LayersOfCopper.md +15 -15
- package/skill/references/types/TPCB_LayersOfCustom.md +41 -41
- package/skill/references/types/TPCB_LayersOfDimension.md +16 -16
- package/skill/references/types/TPCB_LayersOfFill.md +28 -28
- package/skill/references/types/TPCB_LayersOfImage.md +22 -22
- package/skill/references/types/TPCB_LayersOfInner.md +41 -41
- package/skill/references/types/TPCB_LayersOfLine.md +25 -25
- package/skill/references/types/TPCB_LayersOfObject.md +12 -12
- package/skill/references/types/TPCB_LayersOfPad.md +11 -11
- package/skill/references/types/TPCB_LayersOfRegion.md +11 -11
- package/skill/references/types/TPCB_NumberOfCopperLayers.md +9 -9
- package/skill/references/types/TPCB_PolygonSourceArray.md +85 -83
- package/skill/references/types/TPCB_PrimitiveDimensionCoordinateSet.md +66 -66
- package/skill/references/types/TPCB_PrimitivePadHole.md +30 -30
- package/skill/references/types/TPCB_PrimitivePadShape.md +61 -61
- package/skill/references/types/TPCB_PrimitiveSpecialPadShape.md +19 -19
- package/skill/references/types/TSYS_ComparisonErrorCode.md +15 -0
- package/skill/references/types/TSYS_LanguageKeyValuePairs.md +13 -0
- package/skill/references/types/TSYS_MathPolygonGroup.md +15 -15
- package/skill/references/types/TSYS_MathPolygonInput.md +20 -20
- package/skill/references/types/TSYS_ShortcutKeys.md +96 -96
- package/skill/user-guide/using-extension.md +47 -47
- package/src/json-gen.test.js +430 -0
- package/skill/guide/ancillary-projects/pro-api-sdk.md +0 -1
- package/skill/references/interfaces/ISYS_PcbComparisonResponse.md +0 -115
- package/skill/references/types/ISYS_LanguageKeyValuePairs.md +0 -13
- package/skill/references/types/TSYS_PcbComparisonErrorCode.md +0 -10
|
@@ -1,196 +1,196 @@
|
|
|
1
|
-
# Basic Primitive Format
|
|
2
|
-
|
|
3
|
-
## NET Net Information Configuration
|
|
4
|
-
|
|
5
|
-
Net information is different from AD's design.
|
|
6
|
-
|
|
7
|
-
- AD requires it here.
|
|
8
|
-
- This format only fills it in when there are special `net types` and `net colors`.
|
|
9
|
-
The design difference stems from whether there is a dedicated net settings interface listing all nets for configuration.
|
|
10
|
-
|
|
11
|
-
```json
|
|
12
|
-
{ "type": "NET","id": "A", "ticket": 1 }||
|
|
13
|
-
{
|
|
14
|
-
"netType":"High Speed",
|
|
15
|
-
"specialColor":"#666666",
|
|
16
|
-
"hideRetLine":0,
|
|
17
|
-
"differentialName":"AASDF",
|
|
18
|
-
"isPositiveNet":1,
|
|
19
|
-
"equalLengthGroupName":"ABC",
|
|
20
|
-
}|
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
1. type net configuration `NET`.
|
|
24
|
-
2. id unique identifier, net name.
|
|
25
|
-
3. ticket logical clock.
|
|
26
|
-
4. netType net type: `null` means no type.
|
|
27
|
-
5. specialColor special color: `null` means no special color.
|
|
28
|
-
6. hideRetLine whether to hide airwires.
|
|
29
|
-
7. differentialName differential pair name: `null` means not a differential pair.
|
|
30
|
-
8. isPositiveNet whether positive net of differential pair.
|
|
31
|
-
9. equalLengthGroupName equal-length group name: `null` means not in an length-matching group.
|
|
32
|
-
|
|
33
|
-
```json
|
|
34
|
-
{ "type": "NET","id": "B", "ticket": 1 }||
|
|
35
|
-
{
|
|
36
|
-
"netType":null,
|
|
37
|
-
"specialColor":"#666666",
|
|
38
|
-
"hideRetLine":1,
|
|
39
|
-
"differentialName":"AASDF",
|
|
40
|
-
"isPositiveNet":0,
|
|
41
|
-
"equalLengthGroupName":"ABC",
|
|
42
|
-
}|
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
```json
|
|
46
|
-
{ "type": "NET","id": "C", "ticket": 1 }||
|
|
47
|
-
{
|
|
48
|
-
"netType":"High Speed",
|
|
49
|
-
"specialColor":null,
|
|
50
|
-
"hideRetLine":1,
|
|
51
|
-
"differentialName":null,
|
|
52
|
-
"isPositiveNet":0,
|
|
53
|
-
"equalLengthGroupName":null,
|
|
54
|
-
}|
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
## PRIMITIVE Primitive Configuration
|
|
58
|
-
|
|
59
|
-
```json
|
|
60
|
-
{ "type": "PRIMITIVE","id": "VIA", "ticket": 1 }||
|
|
61
|
-
{
|
|
62
|
-
"display":1,
|
|
63
|
-
"pick":0,
|
|
64
|
-
}|
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
1. type primitive configuration `PRIMITIVE`.
|
|
68
|
-
2. id unique identifier, primitive name.
|
|
69
|
-
3. ticket logical clock.
|
|
70
|
-
4. display whether displayed.
|
|
71
|
-
5. pick whether pickable.
|
|
72
|
-
|
|
73
|
-
```json
|
|
74
|
-
{ "type": "PRIMITIVE","id": "PAD", "ticket": 1 }||
|
|
75
|
-
{
|
|
76
|
-
"display":0,
|
|
77
|
-
"pick":1,
|
|
78
|
-
}|
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
## GROUP Group Configuration
|
|
82
|
-
|
|
83
|
-
Through group configuration, each group is given a name. If there is no name, EDA decides how to display the default group name.
|
|
84
|
-
|
|
85
|
-
```json
|
|
86
|
-
{ "type": "GROUP","id": "2", "ticket": 1 }||
|
|
87
|
-
{
|
|
88
|
-
"groupName":"ABCD",
|
|
89
|
-
}|
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
1. type group configuration `GROUP`.
|
|
93
|
-
2. id group number.
|
|
94
|
-
3. ticket logical clock.
|
|
95
|
-
4. groupName name.
|
|
96
|
-
|
|
97
|
-
```json
|
|
98
|
-
{ "type": "GROUP","id": "5", "ticket": 1 }||
|
|
99
|
-
{
|
|
100
|
-
"groupName":"Chinese Name",
|
|
101
|
-
}|
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
## CONNECT Primitive Association
|
|
105
|
-
|
|
106
|
-
Primitive association is used to express the internal combination logic of primitives, such as:
|
|
107
|
-
|
|
108
|
-
- Teardrops and their connections to `LINE`, `ARC`, `PAD`, `VIA`.
|
|
109
|
-
- Pads and their related pin 3D outline `FILL`.
|
|
110
|
-
- `CREASE` and `BOSS` / `SHELL_ENTITY` connections in 3D shells.
|
|
111
|
-
- PCB overrides for primitives inside footprints.
|
|
112
|
-
|
|
113
|
-
Only one-to-many relationships are supported.
|
|
114
|
-
|
|
115
|
-
```json
|
|
116
|
-
{ "type": "CONNECT","id": "e3", "ticket": 1 }||{ "relatedIds":["e15", "e18", "e100"] }|
|
|
117
|
-
```
|
|
118
|
-
|
|
119
|
-
1. type primitive association `CONNECT`.
|
|
120
|
-
2. id main primitive ID.
|
|
121
|
-
3. ticket logical clock.
|
|
122
|
-
4. relatedIds associated primitive IDs.
|
|
123
|
-
|
|
124
|
-
Many-to-many relationships can be expressed with multiple records; there is no corresponding scenario at present.
|
|
125
|
-
|
|
126
|
-
```json
|
|
127
|
-
{ "type": "CONNECT","id": "e4", "ticket": 1 }||{ "relatedIds":["e5", "e6"] }|
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
```json
|
|
131
|
-
{ "type": "CONNECT","id": "e5", "ticket": 1 }||{ "relatedIds":["e4", "e6"] }|
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
```json
|
|
135
|
-
{ "type": "CONNECT","id": "e6", "ticket": 1 }||{ "relatedIds":["e4", "e5"] }|
|
|
136
|
-
```
|
|
137
|
-
|
|
138
|
-
For PCB overrides of primitives inside footprints, use the form `/^[a-z]+\d+[a-z]+\d+$/i` to combine footprint and inner primitive IDs to reference, as follows:
|
|
139
|
-
|
|
140
|
-
```json
|
|
141
|
-
["DOCTYPE", "PCB", "1.0"]
|
|
142
|
-
["COMPONENT", "e13", 5, 1, ...]
|
|
143
|
-
["VIA", "e13e20", 0, "GND", "asdf", ....]
|
|
144
|
-
["PAD", "e13e25", 1, "GND", 0, "1", ....]
|
|
145
|
-
["CONNECT", "e13", ["e13e20", "e13e25"]]
|
|
146
|
-
```
|
|
147
|
-
|
|
148
|
-
Footprint content is as follows:
|
|
149
|
-
|
|
150
|
-
```json
|
|
151
|
-
["DOCTYPE", "FOOTPRINT", "1.0"]
|
|
152
|
-
["VIA", "e20", 0, "GND", "sss", ....]
|
|
153
|
-
["PAD", "e25", 1, "GND", 0, "3", ....]
|
|
154
|
-
```
|
|
155
|
-
|
|
156
|
-
## PROP Additional Primitive Properties
|
|
157
|
-
|
|
158
|
-
Some primitive properties are not required and are relatively generic, so `PROP` is used to assist in describing them.
|
|
159
|
-
|
|
160
|
-
```json
|
|
161
|
-
{ "type": "PROP", "id":"UUID", "ticket": 1 }||{ "color":"#22ee44" }|
|
|
162
|
-
```
|
|
163
|
-
|
|
164
|
-
1. type additional primitive properties: PROP.
|
|
165
|
-
2. id ID of the primitive being attached, two encoding forms:
|
|
166
|
-
1. Normal ID: form `/^[a-z]+\d+$/i`, e.g. `e1`, `e123`.
|
|
167
|
-
2. Footprint instance ID: form `/^[a-z]+\d+[a-z]+\d+$/i`, used for silkscreen in footprints, e.g. `e1e5`, `e12e22`.
|
|
168
|
-
3. color special color.
|
|
169
|
-
|
|
170
|
-
```json
|
|
171
|
-
{ "type": "PROP", "id":"e7e25", "ticket": 1 }||{ "color":"#22ee44" }|
|
|
172
|
-
```
|
|
173
|
-
|
|
174
|
-
To override primitives inside a footprint, use this composite ID form.
|
|
175
|
-
|
|
176
|
-
## EQLEN_GRP
|
|
177
|
-
|
|
178
|
-
```json
|
|
179
|
-
{ "type": "EQLEN_GRP", "id":"UUID", "ticket": 1 }||
|
|
180
|
-
{
|
|
181
|
-
"name":"equal length pad group 2",
|
|
182
|
-
"sort":1.97,
|
|
183
|
-
"pads":
|
|
184
|
-
[
|
|
185
|
-
["U1:1", "U2:3"],
|
|
186
|
-
["U1:2", "U1:a"]
|
|
187
|
-
],
|
|
188
|
-
}|
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
1. type equal-length group: `EQLEN_GRP`.
|
|
192
|
-
2. id unique ID.
|
|
193
|
-
3. ticket logical clock.
|
|
194
|
-
4. name equal-length group name, unique within the project.
|
|
195
|
-
5. sort sort order.
|
|
196
|
-
6. pads array identifying pads by `designator:pad number`.
|
|
1
|
+
# Basic Primitive Format
|
|
2
|
+
|
|
3
|
+
## NET Net Information Configuration
|
|
4
|
+
|
|
5
|
+
Net information is different from AD's design.
|
|
6
|
+
|
|
7
|
+
- AD requires it here.
|
|
8
|
+
- This format only fills it in when there are special `net types` and `net colors`.
|
|
9
|
+
The design difference stems from whether there is a dedicated net settings interface listing all nets for configuration.
|
|
10
|
+
|
|
11
|
+
```json
|
|
12
|
+
{ "type": "NET","id": "A", "ticket": 1 }||
|
|
13
|
+
{
|
|
14
|
+
"netType":"High Speed",
|
|
15
|
+
"specialColor":"#666666",
|
|
16
|
+
"hideRetLine":0,
|
|
17
|
+
"differentialName":"AASDF",
|
|
18
|
+
"isPositiveNet":1,
|
|
19
|
+
"equalLengthGroupName":"ABC",
|
|
20
|
+
}|
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
1. type net configuration `NET`.
|
|
24
|
+
2. id unique identifier, net name.
|
|
25
|
+
3. ticket logical clock.
|
|
26
|
+
4. netType net type: `null` means no type.
|
|
27
|
+
5. specialColor special color: `null` means no special color.
|
|
28
|
+
6. hideRetLine whether to hide airwires.
|
|
29
|
+
7. differentialName differential pair name: `null` means not a differential pair.
|
|
30
|
+
8. isPositiveNet whether positive net of differential pair.
|
|
31
|
+
9. equalLengthGroupName equal-length group name: `null` means not in an length-matching group.
|
|
32
|
+
|
|
33
|
+
```json
|
|
34
|
+
{ "type": "NET","id": "B", "ticket": 1 }||
|
|
35
|
+
{
|
|
36
|
+
"netType":null,
|
|
37
|
+
"specialColor":"#666666",
|
|
38
|
+
"hideRetLine":1,
|
|
39
|
+
"differentialName":"AASDF",
|
|
40
|
+
"isPositiveNet":0,
|
|
41
|
+
"equalLengthGroupName":"ABC",
|
|
42
|
+
}|
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
```json
|
|
46
|
+
{ "type": "NET","id": "C", "ticket": 1 }||
|
|
47
|
+
{
|
|
48
|
+
"netType":"High Speed",
|
|
49
|
+
"specialColor":null,
|
|
50
|
+
"hideRetLine":1,
|
|
51
|
+
"differentialName":null,
|
|
52
|
+
"isPositiveNet":0,
|
|
53
|
+
"equalLengthGroupName":null,
|
|
54
|
+
}|
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## PRIMITIVE Primitive Configuration
|
|
58
|
+
|
|
59
|
+
```json
|
|
60
|
+
{ "type": "PRIMITIVE","id": "VIA", "ticket": 1 }||
|
|
61
|
+
{
|
|
62
|
+
"display":1,
|
|
63
|
+
"pick":0,
|
|
64
|
+
}|
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
1. type primitive configuration `PRIMITIVE`.
|
|
68
|
+
2. id unique identifier, primitive name.
|
|
69
|
+
3. ticket logical clock.
|
|
70
|
+
4. display whether displayed.
|
|
71
|
+
5. pick whether pickable.
|
|
72
|
+
|
|
73
|
+
```json
|
|
74
|
+
{ "type": "PRIMITIVE","id": "PAD", "ticket": 1 }||
|
|
75
|
+
{
|
|
76
|
+
"display":0,
|
|
77
|
+
"pick":1,
|
|
78
|
+
}|
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
## GROUP Group Configuration
|
|
82
|
+
|
|
83
|
+
Through group configuration, each group is given a name. If there is no name, EDA decides how to display the default group name.
|
|
84
|
+
|
|
85
|
+
```json
|
|
86
|
+
{ "type": "GROUP","id": "2", "ticket": 1 }||
|
|
87
|
+
{
|
|
88
|
+
"groupName":"ABCD",
|
|
89
|
+
}|
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
1. type group configuration `GROUP`.
|
|
93
|
+
2. id group number.
|
|
94
|
+
3. ticket logical clock.
|
|
95
|
+
4. groupName name.
|
|
96
|
+
|
|
97
|
+
```json
|
|
98
|
+
{ "type": "GROUP","id": "5", "ticket": 1 }||
|
|
99
|
+
{
|
|
100
|
+
"groupName":"Chinese Name",
|
|
101
|
+
}|
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
## CONNECT Primitive Association
|
|
105
|
+
|
|
106
|
+
Primitive association is used to express the internal combination logic of primitives, such as:
|
|
107
|
+
|
|
108
|
+
- Teardrops and their connections to `LINE`, `ARC`, `PAD`, `VIA`.
|
|
109
|
+
- Pads and their related pin 3D outline `FILL`.
|
|
110
|
+
- `CREASE` and `BOSS` / `SHELL_ENTITY` connections in 3D shells.
|
|
111
|
+
- PCB overrides for primitives inside footprints.
|
|
112
|
+
|
|
113
|
+
Only one-to-many relationships are supported.
|
|
114
|
+
|
|
115
|
+
```json
|
|
116
|
+
{ "type": "CONNECT","id": "e3", "ticket": 1 }||{ "relatedIds":["e15", "e18", "e100"] }|
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
1. type primitive association `CONNECT`.
|
|
120
|
+
2. id main primitive ID.
|
|
121
|
+
3. ticket logical clock.
|
|
122
|
+
4. relatedIds associated primitive IDs.
|
|
123
|
+
|
|
124
|
+
Many-to-many relationships can be expressed with multiple records; there is no corresponding scenario at present.
|
|
125
|
+
|
|
126
|
+
```json
|
|
127
|
+
{ "type": "CONNECT","id": "e4", "ticket": 1 }||{ "relatedIds":["e5", "e6"] }|
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
```json
|
|
131
|
+
{ "type": "CONNECT","id": "e5", "ticket": 1 }||{ "relatedIds":["e4", "e6"] }|
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
```json
|
|
135
|
+
{ "type": "CONNECT","id": "e6", "ticket": 1 }||{ "relatedIds":["e4", "e5"] }|
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
For PCB overrides of primitives inside footprints, use the form `/^[a-z]+\d+[a-z]+\d+$/i` to combine footprint and inner primitive IDs to reference, as follows:
|
|
139
|
+
|
|
140
|
+
```json
|
|
141
|
+
["DOCTYPE", "PCB", "1.0"]
|
|
142
|
+
["COMPONENT", "e13", 5, 1, ...]
|
|
143
|
+
["VIA", "e13e20", 0, "GND", "asdf", ....]
|
|
144
|
+
["PAD", "e13e25", 1, "GND", 0, "1", ....]
|
|
145
|
+
["CONNECT", "e13", ["e13e20", "e13e25"]]
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
Footprint content is as follows:
|
|
149
|
+
|
|
150
|
+
```json
|
|
151
|
+
["DOCTYPE", "FOOTPRINT", "1.0"]
|
|
152
|
+
["VIA", "e20", 0, "GND", "sss", ....]
|
|
153
|
+
["PAD", "e25", 1, "GND", 0, "3", ....]
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
## PROP Additional Primitive Properties
|
|
157
|
+
|
|
158
|
+
Some primitive properties are not required and are relatively generic, so `PROP` is used to assist in describing them.
|
|
159
|
+
|
|
160
|
+
```json
|
|
161
|
+
{ "type": "PROP", "id":"UUID", "ticket": 1 }||{ "color":"#22ee44" }|
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
1. type additional primitive properties: PROP.
|
|
165
|
+
2. id ID of the primitive being attached, two encoding forms:
|
|
166
|
+
1. Normal ID: form `/^[a-z]+\d+$/i`, e.g. `e1`, `e123`.
|
|
167
|
+
2. Footprint instance ID: form `/^[a-z]+\d+[a-z]+\d+$/i`, used for silkscreen in footprints, e.g. `e1e5`, `e12e22`.
|
|
168
|
+
3. color special color.
|
|
169
|
+
|
|
170
|
+
```json
|
|
171
|
+
{ "type": "PROP", "id":"e7e25", "ticket": 1 }||{ "color":"#22ee44" }|
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
To override primitives inside a footprint, use this composite ID form.
|
|
175
|
+
|
|
176
|
+
## EQLEN_GRP
|
|
177
|
+
|
|
178
|
+
```json
|
|
179
|
+
{ "type": "EQLEN_GRP", "id":"UUID", "ticket": 1 }||
|
|
180
|
+
{
|
|
181
|
+
"name":"equal length pad group 2",
|
|
182
|
+
"sort":1.97,
|
|
183
|
+
"pads":
|
|
184
|
+
[
|
|
185
|
+
["U1:1", "U2:3"],
|
|
186
|
+
["U1:2", "U1:a"]
|
|
187
|
+
],
|
|
188
|
+
}|
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
1. type equal-length group: `EQLEN_GRP`.
|
|
192
|
+
2. id unique ID.
|
|
193
|
+
3. ticket logical clock.
|
|
194
|
+
4. name equal-length group name, unique within the project.
|
|
195
|
+
5. sort sort order.
|
|
196
|
+
6. pads array identifying pads by `designator:pad number`.
|
package/skill/format/pcb/rule.md
CHANGED
|
@@ -1,71 +1,71 @@
|
|
|
1
|
-
# Design Rule System
|
|
2
|
-
|
|
3
|
-
## Design Rule Template
|
|
4
|
-
|
|
5
|
-
There are two logical ways to understand the design rule template; the PCB can choose according to its needs:
|
|
6
|
-
|
|
7
|
-
1. As a base version for other design rules, other design rules are overrides of the template.
|
|
8
|
-
2. Mutually exclusive with other design rules; when a template exists, other design rules are only temporary and have no effect.
|
|
9
|
-
3. As an identifier of which template the rules originate from, without affecting the effectiveness of subsequent actual rules (current solution).
|
|
10
|
-
|
|
11
|
-
```json
|
|
12
|
-
{ "type": "RULE_TEMPLATE", "ticket": 1 }||{ "name": "JLCPCB Capability(High Frequency Board)"}|
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
1. type design rule template: `RULE_TEMPLATE`.
|
|
16
|
-
2. ticket logical clock.
|
|
17
|
-
3. name template name.
|
|
18
|
-
|
|
19
|
-
## Design Rule
|
|
20
|
-
|
|
21
|
-
```json
|
|
22
|
-
{ "type": "RULE", "id":"UUID", "ticket": 1 }||
|
|
23
|
-
{
|
|
24
|
-
"ruleType":"Safe Clearance",
|
|
25
|
-
"ruleName":"General",
|
|
26
|
-
"ruleState":1,
|
|
27
|
-
"ruleContext":{},
|
|
28
|
-
}|
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
1. type design rule: `RULE`.
|
|
32
|
-
2. ticket logical clock.
|
|
33
|
-
3. ruleType rule type: decided by EDA.
|
|
34
|
-
4. ruleName rule name.
|
|
35
|
-
5. ruleState rule state: 0 normal rule, 1 default rule, 2 disabled rule.
|
|
36
|
-
6. ruleContext rule content: decided by EDA.
|
|
37
|
-
|
|
38
|
-
Design rules of the same `rule type` must appear in the same order as the left tree in [Rule Manager].
|
|
39
|
-
|
|
40
|
-
## Rule Selector
|
|
41
|
-
|
|
42
|
-
```json
|
|
43
|
-
{ "type": "RULE_SELECTOR", "id":"UUID", "ticket": 1 }||
|
|
44
|
-
{
|
|
45
|
-
"ruleSelect":["NET", "GND"],
|
|
46
|
-
"ruleOrder":0,
|
|
47
|
-
"ruleKeyValue":{ "Safe Clearance": "General", "Other Clearance": "General" },
|
|
48
|
-
}|
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
1. type rule selector: `RULE_SELECTOR`.
|
|
52
|
-
2. ticket logical clock.
|
|
53
|
-
3. ruleSelect selector.
|
|
54
|
-
1. Net class: `["NET_CLASS", "High Speed"]`
|
|
55
|
-
2. Net: `["NET", "GND"]`
|
|
56
|
-
3. Layer: `["LAYER", 5]`
|
|
57
|
-
4. Region: `["REGION", "e10"]`
|
|
58
|
-
5. Footprint: `["FOOTPRINT", "0805"]`
|
|
59
|
-
6. Component: `["COMPONENT", "e100"]`
|
|
60
|
-
7. Copper pour: `["POUR", "e100"]`
|
|
61
|
-
8. Differential pair: `["DIFF_PAIR", "asdf"]`
|
|
62
|
-
9. Equal-length group: `["EQ_LEN_GRP", "fdsa"]`
|
|
63
|
-
10. Future logic support: `["AND", ["NET", "GND"], ["LAYER", 5]]`
|
|
64
|
-
4. ruleOrder priority: the smaller the value, the higher the priority. Recommended:
|
|
65
|
-
- `0` component rule
|
|
66
|
-
- `1` footprint rule
|
|
67
|
-
- `2` region rule
|
|
68
|
-
- `3` net-net rule
|
|
69
|
-
- `4` net rule
|
|
70
|
-
- `5` layer rule
|
|
71
|
-
5. ruleKeyValue rules. Key is the rule class, Value is the rule name. Only one rule can be selected under each rule class.
|
|
1
|
+
# Design Rule System
|
|
2
|
+
|
|
3
|
+
## Design Rule Template
|
|
4
|
+
|
|
5
|
+
There are two logical ways to understand the design rule template; the PCB can choose according to its needs:
|
|
6
|
+
|
|
7
|
+
1. As a base version for other design rules, other design rules are overrides of the template.
|
|
8
|
+
2. Mutually exclusive with other design rules; when a template exists, other design rules are only temporary and have no effect.
|
|
9
|
+
3. As an identifier of which template the rules originate from, without affecting the effectiveness of subsequent actual rules (current solution).
|
|
10
|
+
|
|
11
|
+
```json
|
|
12
|
+
{ "type": "RULE_TEMPLATE", "ticket": 1 }||{ "name": "JLCPCB Capability(High Frequency Board)"}|
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
1. type design rule template: `RULE_TEMPLATE`.
|
|
16
|
+
2. ticket logical clock.
|
|
17
|
+
3. name template name.
|
|
18
|
+
|
|
19
|
+
## Design Rule
|
|
20
|
+
|
|
21
|
+
```json
|
|
22
|
+
{ "type": "RULE", "id":"UUID", "ticket": 1 }||
|
|
23
|
+
{
|
|
24
|
+
"ruleType":"Safe Clearance",
|
|
25
|
+
"ruleName":"General",
|
|
26
|
+
"ruleState":1,
|
|
27
|
+
"ruleContext":{},
|
|
28
|
+
}|
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
1. type design rule: `RULE`.
|
|
32
|
+
2. ticket logical clock.
|
|
33
|
+
3. ruleType rule type: decided by EDA.
|
|
34
|
+
4. ruleName rule name.
|
|
35
|
+
5. ruleState rule state: 0 normal rule, 1 default rule, 2 disabled rule.
|
|
36
|
+
6. ruleContext rule content: decided by EDA.
|
|
37
|
+
|
|
38
|
+
Design rules of the same `rule type` must appear in the same order as the left tree in [Rule Manager].
|
|
39
|
+
|
|
40
|
+
## Rule Selector
|
|
41
|
+
|
|
42
|
+
```json
|
|
43
|
+
{ "type": "RULE_SELECTOR", "id":"UUID", "ticket": 1 }||
|
|
44
|
+
{
|
|
45
|
+
"ruleSelect":["NET", "GND"],
|
|
46
|
+
"ruleOrder":0,
|
|
47
|
+
"ruleKeyValue":{ "Safe Clearance": "General", "Other Clearance": "General" },
|
|
48
|
+
}|
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
1. type rule selector: `RULE_SELECTOR`.
|
|
52
|
+
2. ticket logical clock.
|
|
53
|
+
3. ruleSelect selector.
|
|
54
|
+
1. Net class: `["NET_CLASS", "High Speed"]`
|
|
55
|
+
2. Net: `["NET", "GND"]`
|
|
56
|
+
3. Layer: `["LAYER", 5]`
|
|
57
|
+
4. Region: `["REGION", "e10"]`
|
|
58
|
+
5. Footprint: `["FOOTPRINT", "0805"]`
|
|
59
|
+
6. Component: `["COMPONENT", "e100"]`
|
|
60
|
+
7. Copper pour: `["POUR", "e100"]`
|
|
61
|
+
8. Differential pair: `["DIFF_PAIR", "asdf"]`
|
|
62
|
+
9. Equal-length group: `["EQ_LEN_GRP", "fdsa"]`
|
|
63
|
+
10. Future logic support: `["AND", ["NET", "GND"], ["LAYER", 5]]`
|
|
64
|
+
4. ruleOrder priority: the smaller the value, the higher the priority. Recommended:
|
|
65
|
+
- `0` component rule
|
|
66
|
+
- `1` footprint rule
|
|
67
|
+
- `2` region rule
|
|
68
|
+
- `3` net-net rule
|
|
69
|
+
- `4` net rule
|
|
70
|
+
- `5` layer rule
|
|
71
|
+
5. ruleKeyValue rules. Key is the rule class, Value is the rule name. Only one rule can be selected under each rule class.
|