[Tests][Add] Simple test for EasyEDA download
This commit is contained in:
parent
a424faa025
commit
b752882091
|
|
@ -34,6 +34,12 @@ MATERIAL_MET_01 = {"name": 'MET-01', "ambient_intensity": 0.250, "shininess": 0.
|
|||
"diffuse_color": ('0.298', '0.298', '0.298'), "specular_color": ('0.398', '0.398', '0.398')}
|
||||
MATERIAL_EPOXY_04 = {"name": 'IC-BODY-EPOXY-04', "ambient_intensity": 0.293, "shininess": 0.35, "transparency": 0,
|
||||
"diffuse_color": ('0.148', '0.145', '0.145'), "specular_color": ('0.180', '0.168', '0.160')}
|
||||
if 'KIBOT_EASYEDA_API' in os.environ:
|
||||
API_ENDPOINT = os.environ['KIBOT_EASYEDA_API']
|
||||
if 'KIBOT_EASYEDA_MODEL' in os.environ:
|
||||
ENDPOINT_3D_MODEL = os.environ['KIBOT_EASYEDA_MODEL']
|
||||
if 'KIBOT_EASYEDA_STEP' in os.environ:
|
||||
ENDPOINT_STEP = os.environ['KIBOT_EASYEDA_STEP']
|
||||
|
||||
|
||||
class EasyedaApi:
|
||||
|
|
|
|||
|
|
@ -0,0 +1,157 @@
|
|||
(kicad_pcb (version 20221018) (generator pcbnew)
|
||||
|
||||
(general
|
||||
(thickness 1.6)
|
||||
)
|
||||
|
||||
(paper "A4")
|
||||
(title_block
|
||||
(title "EasyLight")
|
||||
(date "2023-01-24")
|
||||
(rev "1")
|
||||
(company "MPC")
|
||||
)
|
||||
|
||||
(layers
|
||||
(0 "F.Cu" signal)
|
||||
(31 "B.Cu" signal)
|
||||
(32 "B.Adhes" user "B.Adhesive")
|
||||
(33 "F.Adhes" user "F.Adhesive")
|
||||
(34 "B.Paste" user)
|
||||
(35 "F.Paste" user)
|
||||
(36 "B.SilkS" user "B.Silkscreen")
|
||||
(37 "F.SilkS" user "F.Silkscreen")
|
||||
(38 "B.Mask" user)
|
||||
(39 "F.Mask" user)
|
||||
(40 "Dwgs.User" user "User.Drawings")
|
||||
(41 "Cmts.User" user "User.Comments")
|
||||
(42 "Eco1.User" user "User.Eco1")
|
||||
(43 "Eco2.User" user "User.Eco2")
|
||||
(44 "Edge.Cuts" user)
|
||||
(45 "Margin" user)
|
||||
(46 "B.CrtYd" user "B.Courtyard")
|
||||
(47 "F.CrtYd" user "F.Courtyard")
|
||||
(48 "B.Fab" user)
|
||||
(49 "F.Fab" user)
|
||||
)
|
||||
|
||||
(setup
|
||||
(pad_to_mask_clearance 0)
|
||||
(pcbplotparams
|
||||
(layerselection 0x00010fc_ffffffff)
|
||||
(plot_on_all_layers_selection 0x0000000_00000000)
|
||||
(disableapertmacros false)
|
||||
(usegerberextensions false)
|
||||
(usegerberattributes true)
|
||||
(usegerberadvancedattributes true)
|
||||
(creategerberjobfile true)
|
||||
(dashed_line_dash_ratio 12.000000)
|
||||
(dashed_line_gap_ratio 3.000000)
|
||||
(svgprecision 6)
|
||||
(plotframeref false)
|
||||
(viasonmask false)
|
||||
(mode 1)
|
||||
(useauxorigin false)
|
||||
(hpglpennumber 1)
|
||||
(hpglpenspeed 20)
|
||||
(hpglpendiameter 15.000000)
|
||||
(dxfpolygonmode true)
|
||||
(dxfimperialunits true)
|
||||
(dxfusepcbnewfont true)
|
||||
(psnegative false)
|
||||
(psa4output false)
|
||||
(plotreference true)
|
||||
(plotvalue true)
|
||||
(plotinvisibletext false)
|
||||
(sketchpadsonfab false)
|
||||
(subtractmaskfromsilk false)
|
||||
(outputformat 1)
|
||||
(mirror false)
|
||||
(drillshape 1)
|
||||
(scaleselection 1)
|
||||
(outputdirectory "")
|
||||
)
|
||||
)
|
||||
|
||||
(net 0 "")
|
||||
(net 1 "unconnected-(Q1-G-Pad1)")
|
||||
(net 2 "unconnected-(Q1-S-Pad2)")
|
||||
(net 3 "unconnected-(Q1-D-Pad3)")
|
||||
|
||||
(footprint "lcsc:SOT-23-3_L2.9-W1.3-P1.90-LS2.4-BR" (layer "F.Cu")
|
||||
(tstamp 00000000-0000-0000-0000-000063c333b0)
|
||||
(at 58.15 56.83)
|
||||
(property "JLC Part" "Extended Part")
|
||||
(property "LCSC Part" "C181094")
|
||||
(property "Manufacturer" "Hottech(合科泰)")
|
||||
(property "Sheetfile" "easylight.kicad_sch")
|
||||
(property "Sheetname" "")
|
||||
(path "/00000000-0000-0000-0000-000063c09959")
|
||||
(attr smd)
|
||||
(fp_text reference "Q1" (at -1 -2.22) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
(tstamp 9b33a85d-99c9-40d1-85ac-5c528167e0a8)
|
||||
)
|
||||
(fp_text value "AO3415_C181094" (at 0 4.95) (layer "F.Fab") hide
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
(tstamp 4daee9b0-6454-4943-a6b4-f35911bd1649)
|
||||
)
|
||||
(fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab")
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
(tstamp 62b9eb0f-a857-45bf-8853-be8680a14b05)
|
||||
)
|
||||
(fp_line (start -0.73 -1.53) (end -0.73 -0.49)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 198082e7-fd16-4bcc-a453-c362f6e32fda))
|
||||
(fp_line (start -0.73 1.53) (end -0.73 0.49)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 0547b963-26d0-46e3-a099-6a3042c9d95d))
|
||||
(fp_line (start 0.73 -1.53) (end -0.73 -1.53)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 059a3950-9606-41ae-99fc-7eb189da235d))
|
||||
(fp_line (start 0.73 -0.46) (end 0.73 0.46)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 371fe865-b99c-4662-bca3-ed0a60aea1b4))
|
||||
(fp_line (start 0.73 1.53) (end -0.73 1.53)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 4054a300-e79b-4b03-80bc-05482f7f30ff))
|
||||
(fp_circle (center 1.46 1.1) (end 1.56 1.1)
|
||||
(stroke (width 0.2) (type solid)) (fill none) (layer "Cmts.User") (tstamp 6fc66e31-9797-4feb-8cbe-c9a9c477d9c1))
|
||||
(fp_circle (center 1.2 1.45) (end 1.23 1.45)
|
||||
(stroke (width 0.06) (type solid)) (fill none) (layer "F.Fab") (tstamp b1191b58-9204-473b-a209-dad92979664a))
|
||||
(pad "1" smd rect (at 1 0.95) (size 1.25 0.7) (layers "F.Cu" "F.Paste" "F.Mask")
|
||||
(net 1 "unconnected-(Q1-G-Pad1)") (pinfunction "G") (pintype "input") (tstamp 4c2e46ba-37cf-4ebf-902f-83c7e46a2e07))
|
||||
(pad "2" smd rect (at 1 -0.95) (size 1.25 0.7) (layers "F.Cu" "F.Paste" "F.Mask")
|
||||
(net 2 "unconnected-(Q1-S-Pad2)") (pinfunction "S") (pintype "passive") (tstamp 313209f6-d10e-4aae-a94a-76ff2c84b0dd))
|
||||
(pad "3" smd rect (at -1 0) (size 1.25 0.7) (layers "F.Cu" "F.Paste" "F.Mask")
|
||||
(net 3 "unconnected-(Q1-D-Pad3)") (pinfunction "D") (pintype "passive") (tstamp e04686df-bd4f-4b7c-8835-06a4052cb0ea))
|
||||
(model "D:/Kreativ/PCB/KiCad/lcsc.3dshapes/SOT-23-3P_L2.9-W1.3-H1.0-LS2.4-P0.95.wrl"
|
||||
(offset (xyz 0 0 0))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 180))
|
||||
)
|
||||
)
|
||||
|
||||
(gr_line (start 88.265 83.185) (end 38.1 83.185)
|
||||
(stroke (width 0.1) (type solid)) (layer "Edge.Cuts") (tstamp 1c8a1013-289a-4c2b-90ae-12de8f257089))
|
||||
(gr_line (start 38.1 83.185) (end 38.1 41.91)
|
||||
(stroke (width 0.1) (type solid)) (layer "Edge.Cuts") (tstamp 68af144e-d59e-4d96-9011-5b3de7fd6305))
|
||||
(gr_line (start 88.265 41.91) (end 88.265 83.185)
|
||||
(stroke (width 0.1) (type solid)) (layer "Edge.Cuts") (tstamp a6d21407-bcba-4e0b-b016-3aa8e7575ce4))
|
||||
(gr_line (start 38.1 41.91) (end 88.265 41.91)
|
||||
(stroke (width 0.1) (type solid)) (layer "Edge.Cuts") (tstamp ffff2df2-d597-458d-bb58-70042220c9fa))
|
||||
(dimension (type aligned) (layer "Dwgs.User") (tstamp 2b8cad3b-eb51-440c-8286-447d23f0fb69)
|
||||
(pts (xy 36.195 83.185) (xy 36.195 41.91))
|
||||
(height -2.539999)
|
||||
(gr_text "41.2750 mm" (at 32.505001 62.5475 90) (layer "Dwgs.User") (tstamp 2b8cad3b-eb51-440c-8286-447d23f0fb69)
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
)
|
||||
(format (prefix "") (suffix "") (units 2) (units_format 1) (precision 4))
|
||||
(style (thickness 0.15) (arrow_length 1.27) (text_position_mode 0) (extension_height 0.58642) (extension_offset 0) keep_text_aligned)
|
||||
)
|
||||
(dimension (type aligned) (layer "Dwgs.User") (tstamp ddf7b9bd-f528-47c4-a028-61cfdea46fde)
|
||||
(pts (xy 88.265 40.005) (xy 38.1 40.005))
|
||||
(height 2.54)
|
||||
(gr_text "50.1650 mm" (at 63.1825 36.315) (layer "Dwgs.User") (tstamp ddf7b9bd-f528-47c4-a028-61cfdea46fde)
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
)
|
||||
(format (prefix "") (suffix "") (units 2) (units_format 1) (precision 4))
|
||||
(style (thickness 0.15) (arrow_length 1.27) (text_position_mode 0) (extension_height 0.58642) (extension_offset 0) keep_text_aligned)
|
||||
)
|
||||
|
||||
)
|
||||
|
|
@ -0,0 +1,497 @@
|
|||
{
|
||||
"board": {
|
||||
"3dviewports": [],
|
||||
"design_settings": {
|
||||
"defaults": {
|
||||
"board_outline_line_width": 0.049999999999999996,
|
||||
"copper_line_width": 0.19999999999999998,
|
||||
"copper_text_italic": false,
|
||||
"copper_text_size_h": 1.5,
|
||||
"copper_text_size_v": 1.5,
|
||||
"copper_text_thickness": 0.3,
|
||||
"copper_text_upright": false,
|
||||
"courtyard_line_width": 0.049999999999999996,
|
||||
"dimension_precision": 4,
|
||||
"dimension_units": 3,
|
||||
"dimensions": {
|
||||
"arrow_length": 1270000,
|
||||
"extension_offset": 500000,
|
||||
"keep_text_aligned": true,
|
||||
"suppress_zeroes": false,
|
||||
"text_position": 0,
|
||||
"units_format": 1
|
||||
},
|
||||
"fab_line_width": 0.09999999999999999,
|
||||
"fab_text_italic": false,
|
||||
"fab_text_size_h": 1.0,
|
||||
"fab_text_size_v": 1.0,
|
||||
"fab_text_thickness": 0.15,
|
||||
"fab_text_upright": false,
|
||||
"other_line_width": 0.09999999999999999,
|
||||
"other_text_italic": false,
|
||||
"other_text_size_h": 1.0,
|
||||
"other_text_size_v": 1.0,
|
||||
"other_text_thickness": 0.15,
|
||||
"other_text_upright": false,
|
||||
"pads": {
|
||||
"drill": 0.0,
|
||||
"height": 0.55,
|
||||
"width": 1.0
|
||||
},
|
||||
"silk_line_width": 0.12,
|
||||
"silk_text_italic": false,
|
||||
"silk_text_size_h": 1.0,
|
||||
"silk_text_size_v": 1.0,
|
||||
"silk_text_thickness": 0.15,
|
||||
"silk_text_upright": false,
|
||||
"zones": {
|
||||
"45_degree_only": false,
|
||||
"min_clearance": 0.508
|
||||
}
|
||||
},
|
||||
"diff_pair_dimensions": [],
|
||||
"drc_exclusions": [],
|
||||
"meta": {
|
||||
"filename": "board_design_settings.json",
|
||||
"version": 2
|
||||
},
|
||||
"rule_severities": {
|
||||
"annular_width": "error",
|
||||
"clearance": "error",
|
||||
"copper_edge_clearance": "error",
|
||||
"courtyards_overlap": "error",
|
||||
"diff_pair_gap_out_of_range": "error",
|
||||
"diff_pair_uncoupled_length_too_long": "error",
|
||||
"drill_out_of_range": "error",
|
||||
"duplicate_footprints": "warning",
|
||||
"extra_footprint": "warning",
|
||||
"footprint_type_mismatch": "error",
|
||||
"hole_clearance": "error",
|
||||
"hole_near_hole": "error",
|
||||
"invalid_outline": "error",
|
||||
"item_on_disabled_layer": "error",
|
||||
"items_not_allowed": "error",
|
||||
"length_out_of_range": "error",
|
||||
"malformed_courtyard": "error",
|
||||
"microvia_drill_out_of_range": "error",
|
||||
"missing_courtyard": "ignore",
|
||||
"missing_footprint": "warning",
|
||||
"net_conflict": "warning",
|
||||
"npth_inside_courtyard": "ignore",
|
||||
"padstack": "error",
|
||||
"pth_inside_courtyard": "ignore",
|
||||
"shorting_items": "error",
|
||||
"silk_over_copper": "ignore",
|
||||
"silk_overlap": "ignore",
|
||||
"skew_out_of_range": "error",
|
||||
"through_hole_pad_without_hole": "error",
|
||||
"too_many_vias": "error",
|
||||
"track_dangling": "warning",
|
||||
"track_width": "error",
|
||||
"tracks_crossing": "error",
|
||||
"unconnected_items": "error",
|
||||
"unresolved_variable": "error",
|
||||
"via_dangling": "warning",
|
||||
"zone_has_empty_net": "error",
|
||||
"zones_intersect": "error"
|
||||
},
|
||||
"rule_severitieslegacy_courtyards_overlap": true,
|
||||
"rule_severitieslegacy_no_courtyard_defined": false,
|
||||
"rules": {
|
||||
"allow_blind_buried_vias": false,
|
||||
"allow_microvias": false,
|
||||
"max_error": 0.005,
|
||||
"min_clearance": 0.0,
|
||||
"min_copper_edge_clearance": 0.049999999999999996,
|
||||
"min_hole_clearance": 0.25,
|
||||
"min_hole_to_hole": 0.25,
|
||||
"min_microvia_diameter": 0.19999999999999998,
|
||||
"min_microvia_drill": 0.09999999999999999,
|
||||
"min_silk_clearance": 0.0,
|
||||
"min_through_hole_diameter": 0.3,
|
||||
"min_track_width": 0.19999999999999998,
|
||||
"min_via_annular_width": 0.049999999999999996,
|
||||
"min_via_diameter": 0.39999999999999997,
|
||||
"use_height_for_length_calcs": true
|
||||
},
|
||||
"track_widths": [
|
||||
0.0,
|
||||
0.2,
|
||||
0.25,
|
||||
0.5,
|
||||
1.0
|
||||
],
|
||||
"via_dimensions": [],
|
||||
"zones_allow_external_fillets": false,
|
||||
"zones_use_no_outline": true
|
||||
},
|
||||
"layer_presets": [],
|
||||
"viewports": []
|
||||
},
|
||||
"boards": [],
|
||||
"cvpcb": {
|
||||
"equivalence_files": []
|
||||
},
|
||||
"erc": {
|
||||
"erc_exclusions": [],
|
||||
"meta": {
|
||||
"version": 0
|
||||
},
|
||||
"pin_map": [
|
||||
[
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2
|
||||
],
|
||||
[
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
2
|
||||
],
|
||||
[
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
2
|
||||
],
|
||||
[
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
1,
|
||||
1,
|
||||
2
|
||||
],
|
||||
[
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2
|
||||
],
|
||||
[
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2
|
||||
],
|
||||
[
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2
|
||||
],
|
||||
[
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2
|
||||
],
|
||||
[
|
||||
0,
|
||||
2,
|
||||
1,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
2
|
||||
],
|
||||
[
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
2
|
||||
],
|
||||
[
|
||||
0,
|
||||
2,
|
||||
1,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
2
|
||||
],
|
||||
[
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
2
|
||||
]
|
||||
],
|
||||
"rule_severities": {
|
||||
"bus_definition_conflict": "error",
|
||||
"bus_entry_needed": "error",
|
||||
"bus_to_bus_conflict": "error",
|
||||
"bus_to_net_conflict": "error",
|
||||
"conflicting_netclasses": "error",
|
||||
"different_unit_footprint": "error",
|
||||
"different_unit_net": "error",
|
||||
"duplicate_reference": "error",
|
||||
"duplicate_sheet_names": "error",
|
||||
"endpoint_off_grid": "warning",
|
||||
"extra_units": "error",
|
||||
"global_label_dangling": "warning",
|
||||
"hier_label_mismatch": "error",
|
||||
"label_dangling": "error",
|
||||
"lib_symbol_issues": "warning",
|
||||
"missing_bidi_pin": "warning",
|
||||
"missing_input_pin": "warning",
|
||||
"missing_power_pin": "error",
|
||||
"missing_unit": "warning",
|
||||
"multiple_net_names": "warning",
|
||||
"net_not_bus_member": "warning",
|
||||
"no_connect_connected": "warning",
|
||||
"no_connect_dangling": "warning",
|
||||
"pin_not_connected": "error",
|
||||
"pin_not_driven": "error",
|
||||
"pin_to_pin": "error",
|
||||
"power_pin_not_driven": "error",
|
||||
"similar_labels": "warning",
|
||||
"simulation_model_issue": "ignore",
|
||||
"unannotated": "error",
|
||||
"unit_value_mismatch": "error",
|
||||
"unresolved_variable": "error",
|
||||
"wire_dangling": "error"
|
||||
}
|
||||
},
|
||||
"libraries": {
|
||||
"pinned_footprint_libs": [],
|
||||
"pinned_symbol_libs": [
|
||||
"easylight-rescue",
|
||||
"LCSC",
|
||||
"ModischFabrications"
|
||||
]
|
||||
},
|
||||
"meta": {
|
||||
"filename": "easylight.kicad_pro",
|
||||
"version": 1
|
||||
},
|
||||
"net_settings": {
|
||||
"classes": [
|
||||
{
|
||||
"bus_width": 12,
|
||||
"clearance": 0.3,
|
||||
"diff_pair_gap": 0.25,
|
||||
"diff_pair_via_gap": 0.25,
|
||||
"diff_pair_width": 0.2,
|
||||
"line_style": 0,
|
||||
"microvia_diameter": 0.3,
|
||||
"microvia_drill": 0.1,
|
||||
"name": "Default",
|
||||
"pcb_color": "rgba(0, 0, 0, 0.000)",
|
||||
"schematic_color": "rgba(0, 0, 0, 0.000)",
|
||||
"track_width": 0.5,
|
||||
"via_diameter": 0.8,
|
||||
"via_drill": 0.4,
|
||||
"wire_width": 6
|
||||
},
|
||||
{
|
||||
"bus_width": 12,
|
||||
"clearance": 0.5,
|
||||
"diff_pair_gap": 0.25,
|
||||
"diff_pair_via_gap": 0.25,
|
||||
"diff_pair_width": 0.2,
|
||||
"line_style": 0,
|
||||
"microvia_diameter": 0.3,
|
||||
"microvia_drill": 0.1,
|
||||
"name": "PWR",
|
||||
"pcb_color": "rgba(0, 0, 0, 0.000)",
|
||||
"schematic_color": "rgba(0, 0, 0, 0.000)",
|
||||
"track_width": 1.0,
|
||||
"via_diameter": 0.8,
|
||||
"via_drill": 0.4,
|
||||
"wire_width": 6
|
||||
}
|
||||
],
|
||||
"meta": {
|
||||
"version": 3
|
||||
},
|
||||
"net_colors": null,
|
||||
"netclass_assignments": null,
|
||||
"netclass_patterns": [
|
||||
{
|
||||
"netclass": "PWR",
|
||||
"pattern": "+BATT"
|
||||
},
|
||||
{
|
||||
"netclass": "PWR",
|
||||
"pattern": "-BATT"
|
||||
},
|
||||
{
|
||||
"netclass": "PWR",
|
||||
"pattern": "GND"
|
||||
},
|
||||
{
|
||||
"netclass": "PWR",
|
||||
"pattern": "Net-(D1-Pad1)"
|
||||
},
|
||||
{
|
||||
"netclass": "PWR",
|
||||
"pattern": "Net-(D3-Pad1)"
|
||||
},
|
||||
{
|
||||
"netclass": "PWR",
|
||||
"pattern": "Net-(F1-Pad2)"
|
||||
},
|
||||
{
|
||||
"netclass": "PWR",
|
||||
"pattern": "VBUS"
|
||||
},
|
||||
{
|
||||
"netclass": "PWR",
|
||||
"pattern": "VCC"
|
||||
}
|
||||
]
|
||||
},
|
||||
"pcbnew": {
|
||||
"last_paths": {
|
||||
"gencad": "",
|
||||
"idf": "",
|
||||
"netlist": "",
|
||||
"specctra_dsn": "",
|
||||
"step": "",
|
||||
"vrml": ""
|
||||
},
|
||||
"page_layout_descr_file": ""
|
||||
},
|
||||
"schematic": {
|
||||
"annotate_start_num": 0,
|
||||
"drawing": {
|
||||
"dashed_lines_dash_length_ratio": 12.0,
|
||||
"dashed_lines_gap_length_ratio": 3.0,
|
||||
"default_line_thickness": 6.0,
|
||||
"default_text_size": 50.0,
|
||||
"field_names": [],
|
||||
"intersheets_ref_own_page": false,
|
||||
"intersheets_ref_prefix": "",
|
||||
"intersheets_ref_short": false,
|
||||
"intersheets_ref_show": false,
|
||||
"intersheets_ref_suffix": "",
|
||||
"junction_size_choice": 3,
|
||||
"label_size_ratio": 0.25,
|
||||
"pin_symbol_size": 0.0,
|
||||
"text_offset_ratio": 0.08
|
||||
},
|
||||
"legacy_lib_dir": "",
|
||||
"legacy_lib_list": [],
|
||||
"meta": {
|
||||
"version": 1
|
||||
},
|
||||
"net_format_name": "Pcbnew",
|
||||
"ngspice": {
|
||||
"fix_include_paths": true,
|
||||
"fix_passive_vals": false,
|
||||
"meta": {
|
||||
"version": 0
|
||||
},
|
||||
"model_mode": 0,
|
||||
"workbook_filename": ""
|
||||
},
|
||||
"page_layout_descr_file": "",
|
||||
"plot_directory": "",
|
||||
"spice_adjust_passive_values": false,
|
||||
"spice_current_sheet_as_root": false,
|
||||
"spice_external_command": "spice \"%I\"",
|
||||
"spice_model_current_sheet_as_root": true,
|
||||
"spice_save_all_currents": false,
|
||||
"spice_save_all_voltages": false,
|
||||
"subpart_first_id": 65,
|
||||
"subpart_id_separator": 0
|
||||
},
|
||||
"sheets": [
|
||||
[
|
||||
"06adfcc7-e1a0-45c8-b403-32192dec7627",
|
||||
""
|
||||
]
|
||||
],
|
||||
"text_variables": {}
|
||||
}
|
||||
|
|
@ -0,0 +1,447 @@
|
|||
(kicad_sch (version 20230121) (generator eeschema)
|
||||
|
||||
(uuid 06adfcc7-e1a0-45c8-b403-32192dec7627)
|
||||
|
||||
(paper "A4")
|
||||
|
||||
(title_block
|
||||
(title "EasyLight")
|
||||
(date "2023-01-24")
|
||||
(rev "1")
|
||||
(company "MPC")
|
||||
)
|
||||
|
||||
(lib_symbols
|
||||
(symbol "LCSC:AO3415_C181094-LCSC" (pin_names (offset 1.016)) (in_bom yes) (on_board yes)
|
||||
(property "Reference" "Q" (at 0 10.16 0)
|
||||
(effects (font (size 1.524 1.524)))
|
||||
)
|
||||
(property "Value" "AO3415_C181094-LCSC" (at 0 -10.16 0)
|
||||
(effects (font (size 1.524 1.524)))
|
||||
)
|
||||
(property "Footprint" "lcsc:SOT-23-3_L2.9-W1.3-P1.90-LS2.4-BR" (at 0 -12.7 0)
|
||||
(effects (font (size 1.524 1.524)) hide)
|
||||
)
|
||||
(property "Datasheet" "https://lcsc.com/product-detail/MOSFET_AO3415_C181094.html" (at 0 -15.24 0)
|
||||
(effects (font (size 1.524 1.524)) hide)
|
||||
)
|
||||
(property "Manufacturer" "Hottech(合科泰)" (at 0 0 0)
|
||||
(effects (font (size 0 0)) hide)
|
||||
)
|
||||
(property "LCSC Part" "C181094" (at 0 0 0)
|
||||
(effects (font (size 0 0)) hide)
|
||||
)
|
||||
(property "JLC Part" "Extended Part" (at 0 0 0)
|
||||
(effects (font (size 0 0)) hide)
|
||||
)
|
||||
(property "ki_locked" "" (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)))
|
||||
)
|
||||
(symbol "AO3415_C181094-LCSC_1_1"
|
||||
(circle (center -2.54 0) (radius 0.254)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 2.54 2.54)
|
||||
(xy 2.54 -2.54)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.302 -2.54)
|
||||
(xy 3.302 -1.778)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.302 -1.778)
|
||||
(xy 3.302 -1.27)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.302 -1.778)
|
||||
(xy 5.08 -1.778)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.302 0)
|
||||
(xy 3.302 -0.508)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.302 0.508)
|
||||
(xy 3.302 0)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.302 1.778)
|
||||
(xy 3.302 1.27)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.302 2.54)
|
||||
(xy 3.302 1.778)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.556 0)
|
||||
(xy 3.302 0)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 4.064 -0.254)
|
||||
(xy 4.826 0)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 4.064 0.254)
|
||||
(xy 4.064 -0.254)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 4.064 0.254)
|
||||
(xy 4.572 0)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 4.826 0)
|
||||
(xy 3.302 0)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 4.826 0)
|
||||
(xy 4.064 0.254)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 5.08 -1.778)
|
||||
(xy 5.08 -2.54)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 5.08 0)
|
||||
(xy 4.064 -0.254)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 5.08 0)
|
||||
(xy 4.064 0.254)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 5.08 0)
|
||||
(xy 5.08 -1.778)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 5.08 2.54)
|
||||
(xy 5.08 1.778)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 6.096 -0.508)
|
||||
(xy 6.604 -0.508)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 6.096 0.508)
|
||||
(xy 6.35 0.508)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 6.35 0.254)
|
||||
(xy 6.604 0)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 6.35 0.508)
|
||||
(xy 6.604 0)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 6.35 0.508)
|
||||
(xy 6.858 0.508)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 6.604 -1.778)
|
||||
(xy 5.08 -1.778)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 6.604 -1.778)
|
||||
(xy 6.604 0)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 6.604 -0.508)
|
||||
(xy 6.096 0.508)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 6.604 -0.508)
|
||||
(xy 7.112 -0.508)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 6.604 0)
|
||||
(xy 6.604 -0.508)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 6.604 0)
|
||||
(xy 6.858 0.254)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 6.604 0)
|
||||
(xy 6.858 0.508)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 6.604 0.254)
|
||||
(xy 6.604 1.778)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 6.858 0.508)
|
||||
(xy 7.112 0.508)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 7.112 0.508)
|
||||
(xy 6.604 -0.508)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 0.254 -4.318)
|
||||
(xy 0 -4.064)
|
||||
(xy 0 -2.54)
|
||||
(xy -0.254 -2.286)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 0.254 -2.286)
|
||||
(xy 0.508 -2.54)
|
||||
(xy 0.508 -4.064)
|
||||
(xy 0.762 -4.318)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 3.302 1.778)
|
||||
(xy 6.604 1.778)
|
||||
(xy 6.604 1.778)
|
||||
(xy 6.604 1.778)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 5.08 -3.302)
|
||||
(xy -2.54 -3.302)
|
||||
(xy -2.54 0)
|
||||
(xy 2.54 0)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy -1.016 -2.286)
|
||||
(xy -1.016 -4.318)
|
||||
(xy 0 -3.302)
|
||||
(xy -1.016 -2.286)
|
||||
(xy -1.016 -2.286)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type background))
|
||||
)
|
||||
(polyline
|
||||
(pts
|
||||
(xy 1.524 -4.318)
|
||||
(xy 1.524 -2.286)
|
||||
(xy 0.508 -3.302)
|
||||
(xy 1.524 -4.318)
|
||||
(xy 1.524 -4.318)
|
||||
)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type background))
|
||||
)
|
||||
(circle (center 5.08 -3.302) (radius 0.254)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(circle (center 5.08 -1.778) (radius 0.254)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(circle (center 5.08 1.778) (radius 0.254)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
(pin input line (at -5.08 0 0) (length 2.54)
|
||||
(name "G" (effects (font (size 1.27 1.27))))
|
||||
(number "1" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin passive line (at 5.08 -5.08 90) (length 2.54)
|
||||
(name "S" (effects (font (size 1.27 1.27))))
|
||||
(number "2" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin passive line (at 5.08 5.08 270) (length 2.54)
|
||||
(name "D" (effects (font (size 1.27 1.27))))
|
||||
(number "3" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
(symbol (lib_id "LCSC:AO3415_C181094-LCSC") (at 139.7 90.17 0) (unit 1)
|
||||
(in_bom yes) (on_board yes) (dnp no)
|
||||
(uuid 00000000-0000-0000-0000-000063c09959)
|
||||
(property "Reference" "Q1" (at 147.5232 88.8238 0)
|
||||
(effects (font (size 1.524 1.524)) (justify left))
|
||||
)
|
||||
(property "Value" "AO3415_C181094" (at 147.5232 91.5162 0)
|
||||
(effects (font (size 1.524 1.524)) (justify left))
|
||||
)
|
||||
(property "Footprint" "lcsc:SOT-23-3_L2.9-W1.3-P1.90-LS2.4-BR" (at 139.7 102.87 0)
|
||||
(effects (font (size 1.524 1.524)) hide)
|
||||
)
|
||||
(property "Datasheet" "https://lcsc.com/product-detail/MOSFET_AO3415_C181094.html" (at 139.7 105.41 0)
|
||||
(effects (font (size 1.524 1.524)) hide)
|
||||
)
|
||||
(property "Manufacturer" "Hottech(合科泰)" (at 139.7 90.17 0)
|
||||
(effects (font (size 0 0)) hide)
|
||||
)
|
||||
(property "LCSC Part" "C181094" (at 139.7 90.17 0)
|
||||
(effects (font (size 0 0)) hide)
|
||||
)
|
||||
(property "JLC Part" "Extended Part" (at 139.7 90.17 0)
|
||||
(effects (font (size 0 0)) hide)
|
||||
)
|
||||
(pin "1" (uuid fa968abd-33ee-4031-b96c-44f9c0682db3))
|
||||
(pin "2" (uuid 986f7d31-c5e1-492f-88d2-2e4e42182a78))
|
||||
(pin "3" (uuid 12a986ee-f2a2-467e-bac2-62e16b5dd2aa))
|
||||
(instances
|
||||
(project "easylight"
|
||||
(path "/06adfcc7-e1a0-45c8-b403-32192dec7627"
|
||||
(reference "Q1") (unit 1)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(sheet_instances
|
||||
(path "/" (page "1"))
|
||||
)
|
||||
)
|
||||
|
|
@ -0,0 +1,60 @@
|
|||
{
|
||||
"success": true,
|
||||
"code": 0,
|
||||
"result": {
|
||||
"uuid": "42a58f3380f6402cb7a001c100b19e62",
|
||||
"packageDetail": {
|
||||
"uuid": "bade90667a6e4731855e9a223387b8a6",
|
||||
"dataStr": {
|
||||
"shape": [
|
||||
"CIRCLE~4004.7244~3005.7087~0.1181~0.2362~101~gge1041~0~~",
|
||||
"SOLIDREGION~100~~M 4002.5197 2997.1065 L 4002.5197 2995.4135 L 4003.5827 2995.4135 L 4003.5827 2997.1065 Z~cutout~gge1029~~~~0",
|
||||
"SOLIDREGION~100~~M 4003.5433 2997.1065 L 4003.5433 2995.4135 L 4004.7244 2995.4135 L 4004.7244 2997.1065 Z~solid~gge1030~~~~0",
|
||||
"SOLIDREGION~99~~M 3997.4409 3005.7087 L 3997.4409 2994.2913 L 4002.5591 2994.2913 L 4002.5591 3005.7087 Z ~solid~gge999~~~~0",
|
||||
"TRACK~0.6~3~~4002.8591 2993.9913 3997.1409 2993.9913 3997.1409 2998.0528~gge1009~0",
|
||||
"TRACK~0.6~3~~4002.8591 2998.2071 4002.8591 3001.7929~gge1011~0",
|
||||
"PAD~RECT~4003.937~3003.74~4.9213~2.7559~1~~1~0~4001.4764 3002.362 4006.3976 3002.362 4006.3976 3005.118 4001.4764 3005.118~0~gge1002~0~~Y~0~0.0000~0.2000~4003.9368,3003.7402",
|
||||
"PAD~RECT~3996.063~3000~4.9213~2.7559~1~~3~0~3993.6024 2998.6221 3998.5236 2998.6221 3998.5236 3001.378 3993.6024 3001.378~0~gge1008~0~~Y~0~0.0000~0.2000~3996.0632,3000",
|
||||
"CIRCLE~4005.748~3004.331~0.394~0.7874~12~gge1012~0~~",
|
||||
"SVGNODE~{\"gId\":\"g1_outline\",\"nodeName\":\"g\",\"nodeType\":1,\"layerid\":\"19\",\"attrs\":{\"c_width\":\"9.8425\",\"c_height\":\"11.4173\",\"c_rotation\":\"0,0,180\",\"z\":\"0\",\"c_origin\":\"608,-320\",\"uuid\":\"d777607a152f4f3aac9bb0d0c14ed6fd\",\"c_etype\":\"outline3D\",\"id\":\"g1_outline\",\"title\":\"SOT-23-3P_L2.9-W1.3-H1.0-LS2.4-P0.95\",\"layerid\":\"19\",\"transform\":\"scale(1) translate(0, 0)\"},\"childNodes\":[{\"gId\":\"g1_outline_line0\",\"nodeName\":\"polyline\",\"nodeType\":1,\"attrs\":{\"fill\":\"none\",\"id\":\"g1_outline_line0\",\"c_shapetype\":\"line\",\"points\":\"4004.9213 3004.5276 4004.9213 3004.4883 4004.9213 3003.7402 4004.9213 3002.9922 4004.9213 3002.9528 4004.8819 3002.9528 4004.5276 3002.9528 4004.4882 3002.9528 4004.4488 3002.9528 4004.4094 3002.9528 4004.3701 3002.9528 4004.2913 3002.9528 4004.252 3002.9528 4004.2126 3002.9528 4004.1732 3002.9528 4004.1339 3002.9528 4004.0945 3002.9528 4004.0551 3002.9528 4004.0157 3002.9528 4003.937 3002.9528 4003.8976 3002.9528 4003.8583 3002.9528 4003.8189 3002.9528 4003.7402 3002.9528 4003.7008 3002.9528 4003.6614 3002.9528 4003.622 3002.9528 4003.5827 3002.9528 4003.5433 3002.9528 4003.5039 3002.9528 4003.4646 3002.9528 4003.3858 3002.9528 4003.3465 3002.9528 4003.2677 3002.9528 4003.2283 3002.9528 4003.189 3002.9528 4003.1496 3002.9528 4003.1102 3002.9528 4003.0709 3002.9528 4002.9921 3002.9528 4002.9528 3002.9528 4002.9134 3002.9528 4002.874 3002.9528 4002.7953 3002.9528 4002.5591 3002.9528 4002.5591 2997.0473 4002.7953 2997.0473 4004.9213 3004.5276\"}}]}"
|
||||
],
|
||||
"layers": [
|
||||
"1~TopLayer~#FF0000~true~false~true~",
|
||||
"2~BottomLayer~#0000FF~true~false~true~",
|
||||
"3~TopSilkLayer~#FFCC00~true~false~true~",
|
||||
"4~BottomSilkLayer~#66CC33~true~false~true~",
|
||||
"99~ComponentShapeLayer~#00CCCC~true~false~true~0.4",
|
||||
"100~LeadShapeLayer~#CC9999~true~false~true~",
|
||||
"101~ComponentPolarityLayer~#66FFCC~true~false~true~",
|
||||
"Hole~Hole~#222222~false~false~true~",
|
||||
"DRCError~DRCError~#FAD609~false~false~true~"
|
||||
],
|
||||
"objects": [
|
||||
"All~true~false",
|
||||
"Component~true~true",
|
||||
"Prefix~true~true",
|
||||
"Name~true~false",
|
||||
"Track~true~true",
|
||||
"Pad~true~true",
|
||||
"Via~true~true",
|
||||
"Hole~true~true",
|
||||
"Copper_Area~true~true",
|
||||
"Circle~true~true",
|
||||
"Arc~true~true",
|
||||
"Solid_Region~true~true",
|
||||
"Text~true~true",
|
||||
"Image~true~true",
|
||||
"Rect~true~true",
|
||||
"Dimension~true~true",
|
||||
"Protractor~true~true"
|
||||
],
|
||||
"BBox": {
|
||||
"x": 3993.6,
|
||||
"y": 2994,
|
||||
"width": 12.8,
|
||||
"height": 12
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,108 @@
|
|||
v -0.10481 -0.181882 0.1
|
||||
v -0.10359 -0.280967 0.1
|
||||
v -0.10359 -0.383406 0.1
|
||||
newmtl 1
|
||||
Ka 0.25098039215686274 0.25098039215686274 0.25098039215686274
|
||||
Kd 0.25098039215686274 0.25098039215686274 0.25098039215686274
|
||||
Ks 0.07450980392156863 0.07450980392156863 0.07450980392156863
|
||||
d 0.0
|
||||
endmtl
|
||||
v -0.093224 -0.115114 0.1
|
||||
v -0.10481 -0.095601 0.1
|
||||
v -0.071273 -0.115114 0.1
|
||||
v 0.52901 -0.095601 0.1
|
||||
v 0.043765 -0.253342 0.1
|
||||
v 0.062475 -0.241613 0.1
|
||||
v 0.09641 -0.356577 0.1
|
||||
v 0.076898 -0.16195 0.1
|
||||
v -0.073258 -0.118698 0.1
|
||||
v 0.07374 -0.137641 0.1
|
||||
v 0.064093 -0.115114 0.1
|
||||
v 0.090922 -0.115114 0.1
|
||||
v 0.074691 -0.181643 0.1
|
||||
v 0.069309 -0.196534 0.1
|
||||
v 0.059809 -0.210704 0.1
|
||||
newmtl 2
|
||||
Ka 0.6431372549019608 0.615686274509804 0.6
|
||||
Kd 0.45098039215686275 0.43137254901960786 0.4196078431372549
|
||||
Ks 0.03137254901960784 0.03137254901960784 0.03137254901960784
|
||||
d 0.0
|
||||
endmtl
|
||||
v -0.16651 1.137263 1.05
|
||||
v -0.196657 1.149751 1.05
|
||||
v -0.22901 1.15401 1.05
|
||||
v -0.261362 1.149751 1.05
|
||||
v -0.29151 1.137263 1.05
|
||||
v -0.317398 1.117398 1.05
|
||||
v -0.337263 1.09151 1.05
|
||||
v -0.349751 1.061362 1.05
|
||||
v -0.35401 1.02901 1.05
|
||||
v -0.349751 0.996657 1.05
|
||||
v -0.337263 0.96651 1.05
|
||||
v -0.317398 0.940621 1.05
|
||||
v -0.29151 0.920757 1.05
|
||||
v -0.261362 0.908269 1.05
|
||||
v -0.22901 0.90401 1.05
|
||||
newmtl 3
|
||||
Ka 1.0 1.0 1.0
|
||||
Kd 1.0 1.0 1.0
|
||||
Ks 0.8784313725490196 0.8784313725490196 0.8784313725490196
|
||||
d 0.0
|
||||
endmtl
|
||||
v -0.10359 0.397082 0.11
|
||||
v -0.047493 0.376845 0.11
|
||||
v -0.047493 0.294223 0.11
|
||||
v -0.10359 0.27513 0.11
|
||||
v -0.10359 0.245862 0.11
|
||||
v 0.09641 0.321472 0.11
|
||||
v -0.025541 0.300969 0.11
|
||||
v 0.057995 0.330809 0.11
|
||||
v 0.064932 0.332734 0.11
|
||||
v 0.07202 0.33401 0.11
|
||||
v 0.07202 0.334658 0.11
|
||||
v 0.064953 0.335963 0.11
|
||||
v -0.025541 0.367851 0.11
|
||||
v 0.057995 0.337745 0.11
|
||||
newmtl 4
|
||||
Ka 0.7686274509803922 0.7686274509803922 0.7686274509803922
|
||||
Kd 0.7686274509803922 0.7686274509803922 0.7686274509803922
|
||||
Ks 0.615686274509804 0.615686274509804 0.615686274509804
|
||||
d 0.0
|
||||
endmtl
|
||||
v -1.236537 0.76 0.050819
|
||||
v -1.153066 0.75 0.066681
|
||||
v -1.158647 0.75 0.146486
|
||||
v -1.237234 0.75 0.060795
|
||||
v -1.242815 0.75 0.1406
|
||||
v -1.243512 1.14 0.150576
|
||||
v -1.243512 0.76 0.150576
|
||||
v -1.159344 1.14 0.156461
|
||||
v -1.159344 0.76 0.156461
|
||||
v -1.237234 1.15 0.060795
|
||||
usemtl 1
|
||||
f 1// 2// 3//
|
||||
f 4// 5// 6//
|
||||
f 6// 5// 7//
|
||||
f 8// 9// 10//
|
||||
f 11// 12// 13//
|
||||
f 13// 12// 6//
|
||||
usemtl 2
|
||||
f 13// 6// 14//
|
||||
f 14// 6// 7//
|
||||
f 14// 7// 15//
|
||||
f 11// 16// 12//
|
||||
f 12// 16// 17//
|
||||
f 12// 17// 18//
|
||||
usemtl 3
|
||||
f 18// 19// 12//
|
||||
f 12// 19// 20//
|
||||
f 12// 20// 21//
|
||||
f 21// 22// 12//
|
||||
f 12// 22// 23//
|
||||
usemtl 4
|
||||
f 12// 23// 24//
|
||||
f 25// 26// 27//
|
||||
f 27// 26// 28//
|
||||
f 24// 29// 12//
|
||||
f 12// 29// 26//
|
||||
|
||||
|
|
@ -0,0 +1,107 @@
|
|||
#VRML V2.0 utf8
|
||||
# 3D model generated by KiBot (using easyeda2kicad.py code)
|
||||
|
||||
Shape {
|
||||
appearance Appearance {
|
||||
material DEF IC-BODY-EPOXY-04 Material {
|
||||
ambientIntensity 0.293
|
||||
diffuseColor 0.148 0.145 0.145
|
||||
specularColor 0.180 0.168 0.160
|
||||
shininess 0.35
|
||||
transparency 0
|
||||
}
|
||||
}
|
||||
}
|
||||
Shape {
|
||||
appearance Appearance {
|
||||
material DEF MATERIAL_2 Material {
|
||||
ambientIntensity 0.2
|
||||
diffuseColor 0.451 0.431 0.420
|
||||
specularColor 0.031 0.031 0.031
|
||||
shininess 0.5
|
||||
transparency 0
|
||||
}
|
||||
}
|
||||
}
|
||||
Shape {
|
||||
appearance Appearance {
|
||||
material DEF MATERIAL_3 Material {
|
||||
ambientIntensity 0.2
|
||||
diffuseColor 1.000 1.000 1.000
|
||||
specularColor 0.878 0.878 0.878
|
||||
shininess 0.5
|
||||
transparency 1
|
||||
}
|
||||
}
|
||||
}
|
||||
Shape {
|
||||
appearance Appearance {
|
||||
material DEF PIN-01 Material {
|
||||
ambientIntensity 0.271
|
||||
diffuseColor 0.824 0.820 0.781
|
||||
specularColor 0.328 0.258 0.172
|
||||
shininess 0.7
|
||||
transparency 0
|
||||
}
|
||||
}
|
||||
}
|
||||
Shape {
|
||||
geometry IndexedFaceSet {
|
||||
ccw TRUE
|
||||
solid FALSE
|
||||
coord DEF co Coordinate {
|
||||
point [
|
||||
-0.0413 -0.0716 0.0394, -0.0408 -0.1106 0.0394, -0.0408 -0.1509 0.0394, -0.0367 -0.0453 0.0394, -0.0413 -0.0376 0.0394, -0.0281 -0.0453 0.0394, 0.2083 -0.0376 0.0394, 0.0172 -0.0997 0.0394, 0.0246 -0.0951 0.0394, 0.038 -0.1404 0.0394, 0.0303 -0.0638 0.0394, -0.0288 -0.0467 0.0394, 0.029 -0.0542 0.0394, 0.029 -0.0542 0.0394
|
||||
]
|
||||
}
|
||||
coordIndex [
|
||||
0,1,2,-1,3,4,5,-1,5,4,6,-1,7,8,9,-1,10,11,12,-1,12,11,5,-1,
|
||||
]
|
||||
}
|
||||
appearance Appearance {material USE IC-BODY-EPOXY-04}
|
||||
}
|
||||
Shape {
|
||||
geometry IndexedFaceSet {
|
||||
ccw TRUE
|
||||
solid FALSE
|
||||
coord DEF co Coordinate {
|
||||
point [
|
||||
0.029 -0.0542 0.0394, -0.0281 -0.0453 0.0394, 0.0252 -0.0453 0.0394, 0.2083 -0.0376 0.0394, 0.0358 -0.0453 0.0394, 0.0303 -0.0638 0.0394, 0.0294 -0.0715 0.0394, -0.0288 -0.0467 0.0394, 0.0273 -0.0774 0.0394, 0.0235 -0.083 0.0394, 0.0235 -0.083 0.0394
|
||||
]
|
||||
}
|
||||
coordIndex [
|
||||
0,1,2,-1,2,1,3,-1,2,3,4,-1,5,6,7,-1,7,6,8,-1,7,8,9,-1,
|
||||
]
|
||||
}
|
||||
appearance Appearance {material USE MATERIAL_2}
|
||||
}
|
||||
Shape {
|
||||
geometry IndexedFaceSet {
|
||||
ccw TRUE
|
||||
solid FALSE
|
||||
coord DEF co Coordinate {
|
||||
point [
|
||||
0.0235 -0.083 0.0394, -0.0656 0.4477 0.4134, -0.0288 -0.0467 0.0394, -0.0774 0.4527 0.4134, -0.0902 0.4543 0.4134, -0.1029 0.4527 0.4134, -0.1148 0.4477 0.4134, -0.1148 0.4477 0.4134
|
||||
]
|
||||
}
|
||||
coordIndex [
|
||||
0,1,2,-1,2,1,3,-1,2,3,4,-1,4,5,2,-1,2,5,6,-1,
|
||||
]
|
||||
}
|
||||
appearance Appearance {material USE MATERIAL_3}
|
||||
}
|
||||
Shape {
|
||||
geometry IndexedFaceSet {
|
||||
ccw TRUE
|
||||
solid FALSE
|
||||
coord DEF co Coordinate {
|
||||
point [
|
||||
-0.0288 -0.0467 0.0394, -0.1148 0.4477 0.4134, -0.125 0.4399 0.4134, -0.1328 0.4297 0.4134, -0.1377 0.4179 0.4134, -0.1394 0.4051 0.4134, -0.1377 0.3924 0.4134, -0.1328 0.3805 0.4134, -0.1328 0.3805 0.4134
|
||||
]
|
||||
}
|
||||
coordIndex [
|
||||
0,1,2,-1,3,4,5,-1,5,4,6,-1,2,7,0,-1,0,7,4,-1,
|
||||
]
|
||||
}
|
||||
appearance Appearance {material USE PIN-01}
|
||||
}
|
||||
|
|
@ -138,6 +138,23 @@ def test_step_rel_dir_1(test_dir):
|
|||
ctx.clean_up(keep_project=True)
|
||||
|
||||
|
||||
@pytest.mark.indep
|
||||
def test_step_ea_dl_1(test_dir):
|
||||
prj = 'easyeda_3d_dl'
|
||||
ctx = context.TestContext(test_dir, prj, 'step_simple', STEP_DIR)
|
||||
os.environ['KIBOT_3D_MODELS'] = os.path.join(ctx.output_dir, STEP_DIR)
|
||||
ctx.run(kicost=True)
|
||||
del os.environ['KIBOT_3D_MODELS']
|
||||
# Check all outputs are there
|
||||
name = prj+'-3D.step'
|
||||
step = 'SOT-23-3P_L2.9-W1.3-H1.0-LS2.4-P0.95.step'
|
||||
wrl = 'SOT-23-3P_L2.9-W1.3-H1.0-LS2.4-P0.95.wrl'
|
||||
ctx.expect_out_file_d([name, step, wrl])
|
||||
ctx.search_in_file_d(step, 'This is a STEP file')
|
||||
ctx.compare_txt(os.path.join(STEP_DIR, wrl))
|
||||
ctx.clean_up(keep_project=True)
|
||||
|
||||
|
||||
@pytest.mark.slow
|
||||
@pytest.mark.pcbnew
|
||||
def test_render_3d_variant_1(test_dir):
|
||||
|
|
|
|||
|
|
@ -298,7 +298,9 @@ class TestContext(object):
|
|||
return files[0] if len(files) == 1 else files
|
||||
|
||||
def expect_out_file_d(self, filename):
|
||||
return self.expect_out_file(os.path.join(self.sub_dir, filename))
|
||||
if isinstance(filename, str):
|
||||
filename = [filename]
|
||||
return self.expect_out_file([os.path.join(self.sub_dir, f) for f in filename])
|
||||
|
||||
def dont_expect_out_file(self, filename):
|
||||
file = self.get_out_path(filename)
|
||||
|
|
@ -427,6 +429,10 @@ class TestContext(object):
|
|||
server = None
|
||||
else:
|
||||
os.environ['KICOST_KITSPACE_URL'] = 'http://localhost:8000'
|
||||
os.environ['KIBOT_EASYEDA_API'] = 'http://localhost:8000/api/{lcsc_id}'
|
||||
os.environ['KIBOT_EASYEDA_MODEL'] = 'http://localhost:8000/model/{uuid}'
|
||||
os.environ['KIBOT_EASYEDA_STEP'] = 'http://localhost:8000/step/{uuid}'
|
||||
|
||||
f_o = open(self.get_out_path('server_stdout.txt'), 'at')
|
||||
f_e = open(self.get_out_path('server_stderr.txt'), 'at')
|
||||
server = subprocess.Popen('./tests/utils/dummy-web-server.py', stdout=f_o, stderr=f_e)
|
||||
|
|
@ -492,6 +498,8 @@ class TestContext(object):
|
|||
return res
|
||||
|
||||
def search_in_file_d(self, file, texts):
|
||||
if isinstance(texts, str):
|
||||
texts = [texts]
|
||||
return self.search_in_file(os.path.join(self.sub_dir, file), texts)
|
||||
|
||||
def search_not_in_file(self, file, texts):
|
||||
|
|
|
|||
|
|
@ -68,7 +68,28 @@ class S(BaseHTTPRequestHandler):
|
|||
|
||||
def do_GET(self):
|
||||
self._set_headers()
|
||||
self.wfile.write(self._html(self.path))
|
||||
if self.path.startswith('/api/'):
|
||||
self.easyeda_api(self.path[5:])
|
||||
elif self.path.startswith('/model/'):
|
||||
self.easyeda_model(self.path[7:])
|
||||
elif self.path.startswith('/step/'):
|
||||
self.easyeda_step(self.path[6:])
|
||||
else:
|
||||
self.wfile.write(self._html(self.path))
|
||||
|
||||
def easyeda_api(self, component):
|
||||
print(f'EasyEDA api request for {component}')
|
||||
with open(op.join(op.dirname(__file__), '../data/EasyEDA_API_C181094.json'), 'rb') as f:
|
||||
self.wfile.write(f.read())
|
||||
|
||||
def easyeda_model(self, component):
|
||||
print(f'EasyEDA 3D model request for {component}')
|
||||
with open(op.join(op.dirname(__file__), '../data/EasyEDA_C181094.obj'), 'rb') as f:
|
||||
self.wfile.write(f.read())
|
||||
|
||||
def easyeda_step(self, component):
|
||||
print(f'EasyEDA STEP request for {component}')
|
||||
self.wfile.write(b'This is a STEP file')
|
||||
|
||||
def do_HEAD(self):
|
||||
self._set_headers()
|
||||
|
|
|
|||
Loading…
Reference in New Issue