@tscircuit/3d-viewer 0.0.471 → 0.0.473
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/dist/index.js +1188 -208
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -24976,10 +24976,12 @@ var DipPinLeg = ({ x, y, z: z135 }) => {
|
|
|
24976
24976
|
var Dip = ({
|
|
24977
24977
|
numPins = 8,
|
|
24978
24978
|
pitch = 2.54,
|
|
24979
|
-
bodyWidth = 6.4
|
|
24979
|
+
bodyWidth = 6.4,
|
|
24980
|
+
rowSpacing
|
|
24980
24981
|
}) => {
|
|
24981
24982
|
const numPinsOnEachSide = Math.floor(numPins / 2);
|
|
24982
|
-
const
|
|
24983
|
+
const pinRowSpacing = rowSpacing ?? (bodyWidth >= 7 ? bodyWidth : bodyWidth + 1.22);
|
|
24984
|
+
const chipBodyWidth = bodyWidth >= 7 ? pinRowSpacing - 1.22 : bodyWidth;
|
|
24983
24985
|
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
24984
24986
|
range(numPins).map((i) => {
|
|
24985
24987
|
const yRow = i % numPinsOnEachSide;
|
|
@@ -24987,7 +24989,7 @@ var Dip = ({
|
|
|
24987
24989
|
return /* @__PURE__ */ jsx5(
|
|
24988
24990
|
DipPinLeg,
|
|
24989
24991
|
{
|
|
24990
|
-
x: xRow *
|
|
24992
|
+
x: xRow * pinRowSpacing / 2,
|
|
24991
24993
|
y: yRow * pitch - (numPinsOnEachSide - 1) / 2 * pitch,
|
|
24992
24994
|
z: DIP_PIN_HEIGHT / 2 + heightAboveSurface
|
|
24993
24995
|
},
|
|
@@ -24997,7 +24999,7 @@ var Dip = ({
|
|
|
24997
24999
|
/* @__PURE__ */ jsx5(
|
|
24998
25000
|
ChipBody,
|
|
24999
25001
|
{
|
|
25000
|
-
width:
|
|
25002
|
+
width: chipBodyWidth,
|
|
25001
25003
|
length: numPinsOnEachSide * pitch + 0.5,
|
|
25002
25004
|
height: DIP_PIN_HEIGHT - heightAboveSurface,
|
|
25003
25005
|
heightAboveSurface,
|
|
@@ -25343,7 +25345,7 @@ var QFP = ({
|
|
|
25343
25345
|
taperRatio: 0.03,
|
|
25344
25346
|
chamferSize: 0.7,
|
|
25345
25347
|
notchPosition: {
|
|
25346
|
-
x: bodyLength10 / 2 - 1.5,
|
|
25348
|
+
x: -(bodyLength10 / 2 - 1.5),
|
|
25347
25349
|
y: bodyWidth / 2 - 1.5,
|
|
25348
25350
|
z: 1.5
|
|
25349
25351
|
},
|
|
@@ -25396,72 +25398,86 @@ var getLeadWidth = (pinCount, width10) => {
|
|
|
25396
25398
|
var PinRow = ({
|
|
25397
25399
|
numberOfPins,
|
|
25398
25400
|
pitch = 2.54,
|
|
25399
|
-
longSidePinLength = 6
|
|
25401
|
+
longSidePinLength = 6,
|
|
25402
|
+
invert,
|
|
25403
|
+
faceup,
|
|
25404
|
+
rows = 1
|
|
25400
25405
|
}) => {
|
|
25401
25406
|
const pinThickness = 0.63;
|
|
25402
25407
|
const bodyHeight = 2;
|
|
25403
|
-
const
|
|
25408
|
+
const pinsPerRow = Math.ceil(numberOfPins / rows);
|
|
25409
|
+
const rowSpacing = 2.54;
|
|
25410
|
+
const bodyWidth = pinsPerRow * pitch;
|
|
25411
|
+
const bodyDepth = rows > 1 ? (rows - 1) * rowSpacing + pinThickness * 3 : pinThickness * 3;
|
|
25404
25412
|
const shortSidePinLength = 3;
|
|
25405
|
-
const xoff = -((
|
|
25413
|
+
const xoff = -((pinsPerRow - 1) / 2) * pitch;
|
|
25414
|
+
const bodyCenterY = rows > 1 ? -((rows - 1) * rowSpacing) / 2 : 0;
|
|
25415
|
+
const flipZ = (z135) => invert || faceup ? -z135 + bodyHeight : z135;
|
|
25406
25416
|
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
25407
25417
|
/* @__PURE__ */ jsx5(
|
|
25408
25418
|
Cuboid,
|
|
25409
25419
|
{
|
|
25410
25420
|
color: "#222",
|
|
25411
|
-
size: [bodyWidth,
|
|
25412
|
-
center: [0,
|
|
25421
|
+
size: [bodyWidth, bodyDepth, bodyHeight],
|
|
25422
|
+
center: [0, bodyCenterY, flipZ(bodyHeight / 2)]
|
|
25413
25423
|
}
|
|
25414
25424
|
),
|
|
25415
|
-
Array.from({ length: numberOfPins }, (_, i) =>
|
|
25416
|
-
|
|
25417
|
-
|
|
25418
|
-
|
|
25419
|
-
|
|
25420
|
-
|
|
25421
|
-
|
|
25422
|
-
|
|
25423
|
-
|
|
25424
|
-
|
|
25425
|
-
|
|
25426
|
-
|
|
25427
|
-
|
|
25428
|
-
|
|
25429
|
-
|
|
25430
|
-
|
|
25431
|
-
|
|
25432
|
-
|
|
25433
|
-
|
|
25434
|
-
|
|
25435
|
-
|
|
25436
|
-
|
|
25437
|
-
|
|
25438
|
-
|
|
25439
|
-
|
|
25440
|
-
|
|
25441
|
-
|
|
25442
|
-
|
|
25443
|
-
|
|
25444
|
-
|
|
25445
|
-
|
|
25446
|
-
|
|
25447
|
-
|
|
25448
|
-
|
|
25449
|
-
|
|
25450
|
-
|
|
25451
|
-
|
|
25452
|
-
|
|
25453
|
-
|
|
25454
|
-
|
|
25455
|
-
|
|
25456
|
-
|
|
25457
|
-
|
|
25458
|
-
|
|
25459
|
-
|
|
25460
|
-
|
|
25461
|
-
|
|
25462
|
-
|
|
25463
|
-
|
|
25464
|
-
|
|
25425
|
+
Array.from({ length: numberOfPins }, (_, i) => {
|
|
25426
|
+
const row = Math.floor(i / pinsPerRow);
|
|
25427
|
+
const col = i % pinsPerRow;
|
|
25428
|
+
const x = xoff + col * pitch;
|
|
25429
|
+
const y = -row * rowSpacing;
|
|
25430
|
+
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
25431
|
+
!faceup && /* @__PURE__ */ jsx5(Colorize, { color: "gold", children: /* @__PURE__ */ jsxs(Hull, { children: [
|
|
25432
|
+
/* @__PURE__ */ jsx5(
|
|
25433
|
+
Cuboid,
|
|
25434
|
+
{
|
|
25435
|
+
color: "gold",
|
|
25436
|
+
size: [
|
|
25437
|
+
pinThickness,
|
|
25438
|
+
pinThickness,
|
|
25439
|
+
shortSidePinLength * 0.9
|
|
25440
|
+
],
|
|
25441
|
+
center: [x, y, flipZ(bodyHeight * 0.9 + bodyHeight / 2)]
|
|
25442
|
+
}
|
|
25443
|
+
),
|
|
25444
|
+
/* @__PURE__ */ jsx5(
|
|
25445
|
+
Cuboid,
|
|
25446
|
+
{
|
|
25447
|
+
color: "gold",
|
|
25448
|
+
size: [
|
|
25449
|
+
pinThickness / 1.8,
|
|
25450
|
+
pinThickness / 1.8,
|
|
25451
|
+
shortSidePinLength
|
|
25452
|
+
],
|
|
25453
|
+
center: [x, y, flipZ(bodyHeight + bodyHeight / 2)]
|
|
25454
|
+
}
|
|
25455
|
+
)
|
|
25456
|
+
] }) }, `short-${i}`),
|
|
25457
|
+
/* @__PURE__ */ jsx5(Colorize, { color: "gold", children: /* @__PURE__ */ jsxs(Hull, { children: [
|
|
25458
|
+
/* @__PURE__ */ jsx5(
|
|
25459
|
+
Cuboid,
|
|
25460
|
+
{
|
|
25461
|
+
color: "gold",
|
|
25462
|
+
size: [pinThickness, pinThickness, longSidePinLength * 0.9],
|
|
25463
|
+
center: [x, y, flipZ(-longSidePinLength / 2 * 0.9)]
|
|
25464
|
+
}
|
|
25465
|
+
),
|
|
25466
|
+
/* @__PURE__ */ jsx5(
|
|
25467
|
+
Cuboid,
|
|
25468
|
+
{
|
|
25469
|
+
color: "gold",
|
|
25470
|
+
size: [
|
|
25471
|
+
pinThickness / 1.8,
|
|
25472
|
+
pinThickness / 1.8,
|
|
25473
|
+
longSidePinLength
|
|
25474
|
+
],
|
|
25475
|
+
center: [x, y, flipZ(-longSidePinLength / 2)]
|
|
25476
|
+
}
|
|
25477
|
+
)
|
|
25478
|
+
] }) }, `long-${i}`)
|
|
25479
|
+
] });
|
|
25480
|
+
})
|
|
25465
25481
|
] });
|
|
25466
25482
|
};
|
|
25467
25483
|
var getQuadCoords2 = (params) => {
|
|
@@ -25724,6 +25740,79 @@ var SOT235 = () => {
|
|
|
25724
25740
|
] });
|
|
25725
25741
|
};
|
|
25726
25742
|
var SOT_235_default = SOT235;
|
|
25743
|
+
var SOT23W = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
|
|
25744
|
+
const bodyWidth = 1.92;
|
|
25745
|
+
const bodyLength10 = 2.9;
|
|
25746
|
+
const bodyHeight = 1.1;
|
|
25747
|
+
const leadWidth = 0.4;
|
|
25748
|
+
const leadThickness = 0.15;
|
|
25749
|
+
const leadHeight = 0.45;
|
|
25750
|
+
const padContactLength = 0.25;
|
|
25751
|
+
const padThickness = leadThickness / 2;
|
|
25752
|
+
const extendedBodyDistance = (fullWidth - bodyWidth) / 2 + 0.3;
|
|
25753
|
+
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
25754
|
+
/* @__PURE__ */ jsx5(
|
|
25755
|
+
SmdChipLead,
|
|
25756
|
+
{
|
|
25757
|
+
rotation: Math.PI,
|
|
25758
|
+
position: {
|
|
25759
|
+
x: fullWidth / 2,
|
|
25760
|
+
y: 0,
|
|
25761
|
+
z: padThickness
|
|
25762
|
+
},
|
|
25763
|
+
width: leadWidth,
|
|
25764
|
+
thickness: leadThickness,
|
|
25765
|
+
padContactLength,
|
|
25766
|
+
bodyDistance: extendedBodyDistance,
|
|
25767
|
+
height: leadHeight
|
|
25768
|
+
},
|
|
25769
|
+
1
|
|
25770
|
+
),
|
|
25771
|
+
/* @__PURE__ */ jsx5(
|
|
25772
|
+
SmdChipLead,
|
|
25773
|
+
{
|
|
25774
|
+
position: {
|
|
25775
|
+
x: -fullWidth / 2,
|
|
25776
|
+
y: -0.95,
|
|
25777
|
+
z: padThickness
|
|
25778
|
+
},
|
|
25779
|
+
width: leadWidth,
|
|
25780
|
+
thickness: leadThickness,
|
|
25781
|
+
padContactLength,
|
|
25782
|
+
bodyDistance: extendedBodyDistance,
|
|
25783
|
+
height: leadHeight
|
|
25784
|
+
},
|
|
25785
|
+
2
|
|
25786
|
+
),
|
|
25787
|
+
/* @__PURE__ */ jsx5(
|
|
25788
|
+
SmdChipLead,
|
|
25789
|
+
{
|
|
25790
|
+
position: {
|
|
25791
|
+
x: -fullWidth / 2,
|
|
25792
|
+
y: 0.95,
|
|
25793
|
+
z: padThickness
|
|
25794
|
+
},
|
|
25795
|
+
width: leadWidth,
|
|
25796
|
+
thickness: leadThickness,
|
|
25797
|
+
padContactLength,
|
|
25798
|
+
bodyDistance: extendedBodyDistance,
|
|
25799
|
+
height: leadHeight
|
|
25800
|
+
},
|
|
25801
|
+
3
|
|
25802
|
+
),
|
|
25803
|
+
/* @__PURE__ */ jsx5(
|
|
25804
|
+
ChipBody,
|
|
25805
|
+
{
|
|
25806
|
+
center: { x: 0, y: 0, z: 0 },
|
|
25807
|
+
width: bodyWidth,
|
|
25808
|
+
length: bodyLength10,
|
|
25809
|
+
height: bodyHeight,
|
|
25810
|
+
straightHeightRatio: 0.45,
|
|
25811
|
+
heightAboveSurface: 0.05
|
|
25812
|
+
}
|
|
25813
|
+
)
|
|
25814
|
+
] });
|
|
25815
|
+
};
|
|
25727
25816
|
var fullLength4 = 0.6;
|
|
25728
25817
|
var width4 = 0.3;
|
|
25729
25818
|
var height4 = 0.33;
|
|
@@ -25927,31 +26016,39 @@ var FemaleHeader = ({
|
|
|
25927
26016
|
pitch = 2.54,
|
|
25928
26017
|
legsLength = 3,
|
|
25929
26018
|
outerDiameter = 0.945,
|
|
25930
|
-
innerDiameter = 0.945
|
|
26019
|
+
innerDiameter = 0.945,
|
|
26020
|
+
rows = 1
|
|
25931
26021
|
}) => {
|
|
25932
26022
|
const pinThickness = innerDiameter / 1.5;
|
|
25933
26023
|
const bodyDepth = pinThickness * 2 + outerDiameter;
|
|
25934
26024
|
const bodyHeight = 5;
|
|
25935
|
-
const
|
|
26025
|
+
const pinsPerRow = Math.ceil(numberOfPins / rows);
|
|
26026
|
+
const rowSpacing = 2.54;
|
|
26027
|
+
const bodyWidth = (pinsPerRow - 1) * pitch + outerDiameter + pitch / 2;
|
|
26028
|
+
const bodyDepthTotal = rows > 1 ? (rows - 1) * rowSpacing + bodyDepth : bodyDepth;
|
|
25936
26029
|
const gapWidth = pinThickness * 1.6;
|
|
25937
|
-
const xoff = -((
|
|
26030
|
+
const xoff = -((pinsPerRow - 1) / 2) * pitch;
|
|
26031
|
+
const bodyCenterY = rows > 1 ? -((rows - 1) * rowSpacing) / 2 : 0;
|
|
25938
26032
|
const Body = /* @__PURE__ */ jsx5(Colorize, { color: "#1a1a1a", children: /* @__PURE__ */ jsxs(Subtract, { children: [
|
|
25939
26033
|
/* @__PURE__ */ jsx5(
|
|
25940
26034
|
Cuboid,
|
|
25941
26035
|
{
|
|
25942
26036
|
color: "#000",
|
|
25943
|
-
size: [bodyWidth,
|
|
25944
|
-
center: [0,
|
|
26037
|
+
size: [bodyWidth, bodyDepthTotal, bodyHeight],
|
|
26038
|
+
center: [0, bodyCenterY, bodyHeight / 2]
|
|
25945
26039
|
}
|
|
25946
26040
|
),
|
|
25947
|
-
Array.from(
|
|
25948
|
-
|
|
25949
|
-
|
|
26041
|
+
Array.from({ length: numberOfPins }, (_, i) => {
|
|
26042
|
+
const row = Math.floor(i / pinsPerRow);
|
|
26043
|
+
const col = i % pinsPerRow;
|
|
26044
|
+
const x = xoff + col * pitch;
|
|
26045
|
+
const y = -row * rowSpacing;
|
|
26046
|
+
return innerDiameter ? /* @__PURE__ */ jsx5(
|
|
25950
26047
|
Cylinder,
|
|
25951
26048
|
{
|
|
25952
26049
|
height: bodyHeight + 0.1,
|
|
25953
26050
|
radius: innerDiameter / 2,
|
|
25954
|
-
center: [
|
|
26051
|
+
center: [x, y, bodyHeight / 2],
|
|
25955
26052
|
color: "#222"
|
|
25956
26053
|
},
|
|
25957
26054
|
i
|
|
@@ -25959,42 +26056,48 @@ var FemaleHeader = ({
|
|
|
25959
26056
|
Cuboid,
|
|
25960
26057
|
{
|
|
25961
26058
|
size: [gapWidth, gapWidth, bodyHeight],
|
|
25962
|
-
center: [
|
|
26059
|
+
center: [x, y, bodyHeight / 2]
|
|
25963
26060
|
},
|
|
25964
26061
|
i
|
|
25965
|
-
)
|
|
25966
|
-
)
|
|
26062
|
+
);
|
|
26063
|
+
})
|
|
25967
26064
|
] }) });
|
|
25968
26065
|
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
25969
26066
|
Body,
|
|
25970
|
-
Array.from({ length: numberOfPins }, (_, i) =>
|
|
25971
|
-
|
|
25972
|
-
|
|
25973
|
-
|
|
25974
|
-
|
|
25975
|
-
|
|
25976
|
-
|
|
25977
|
-
|
|
25978
|
-
|
|
25979
|
-
|
|
26067
|
+
Array.from({ length: numberOfPins }, (_, i) => {
|
|
26068
|
+
const row = Math.floor(i / pinsPerRow);
|
|
26069
|
+
const col = i % pinsPerRow;
|
|
26070
|
+
const x = xoff + col * pitch;
|
|
26071
|
+
const y = -row * rowSpacing;
|
|
26072
|
+
return /* @__PURE__ */ jsxs(Colorize, { color: "silver", children: [
|
|
26073
|
+
/* @__PURE__ */ jsxs(Hull, { children: [
|
|
26074
|
+
/* @__PURE__ */ jsx5(
|
|
26075
|
+
Cuboid,
|
|
26076
|
+
{
|
|
26077
|
+
color: "silver",
|
|
26078
|
+
size: [pinThickness, pinThickness, legsLength * 0.9],
|
|
26079
|
+
center: [x, y, -legsLength / 2 * 0.9]
|
|
26080
|
+
}
|
|
26081
|
+
),
|
|
26082
|
+
/* @__PURE__ */ jsx5(
|
|
26083
|
+
Cuboid,
|
|
26084
|
+
{
|
|
26085
|
+
color: "silver",
|
|
26086
|
+
size: [pinThickness / 1.8, pinThickness / 1.8, legsLength],
|
|
26087
|
+
center: [x, y, -legsLength / 2]
|
|
26088
|
+
}
|
|
26089
|
+
)
|
|
26090
|
+
] }),
|
|
25980
26091
|
/* @__PURE__ */ jsx5(
|
|
25981
26092
|
Cuboid,
|
|
25982
26093
|
{
|
|
25983
26094
|
color: "silver",
|
|
25984
|
-
size: [
|
|
25985
|
-
center: [
|
|
26095
|
+
size: [gapWidth, gapWidth, gapWidth * 0.5],
|
|
26096
|
+
center: [x, y, gapWidth / 2 * 0.5]
|
|
25986
26097
|
}
|
|
25987
26098
|
)
|
|
25988
|
-
] })
|
|
25989
|
-
|
|
25990
|
-
Cuboid,
|
|
25991
|
-
{
|
|
25992
|
-
color: "silver",
|
|
25993
|
-
size: [gapWidth, gapWidth, gapWidth * 0.5],
|
|
25994
|
-
center: [xoff + i * pitch, 0, gapWidth / 2 * 0.5]
|
|
25995
|
-
}
|
|
25996
|
-
)
|
|
25997
|
-
] }, i))
|
|
26099
|
+
] }, i);
|
|
26100
|
+
})
|
|
25998
26101
|
] });
|
|
25999
26102
|
};
|
|
26000
26103
|
var PushButton = ({
|
|
@@ -26749,6 +26852,150 @@ var SOD123FL = () => {
|
|
|
26749
26852
|
)
|
|
26750
26853
|
] });
|
|
26751
26854
|
};
|
|
26855
|
+
var SOD123W = () => {
|
|
26856
|
+
const fullWidth = 2.6;
|
|
26857
|
+
const bodyLength10 = 1.7;
|
|
26858
|
+
const bodyHeight = 1;
|
|
26859
|
+
const padWidth = 0.9;
|
|
26860
|
+
const padLength = 0.9;
|
|
26861
|
+
const padThickness = 0.2;
|
|
26862
|
+
const leftPadCenterX = -(fullWidth / 2 - 0.075);
|
|
26863
|
+
const rightPadCenterX = fullWidth / 2 - 0.075;
|
|
26864
|
+
const taperOffset = 0.4;
|
|
26865
|
+
const lowerTaperOffset = 0.1;
|
|
26866
|
+
const straightHeight = bodyHeight * 0.2;
|
|
26867
|
+
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
26868
|
+
/* @__PURE__ */ jsx5(
|
|
26869
|
+
Cuboid,
|
|
26870
|
+
{
|
|
26871
|
+
color: "#ccc",
|
|
26872
|
+
size: [padLength, padWidth, padThickness],
|
|
26873
|
+
center: [leftPadCenterX, 0, padThickness / 2]
|
|
26874
|
+
}
|
|
26875
|
+
),
|
|
26876
|
+
/* @__PURE__ */ jsx5(
|
|
26877
|
+
Cuboid,
|
|
26878
|
+
{
|
|
26879
|
+
color: "#ccc",
|
|
26880
|
+
size: [padLength, padWidth, padThickness],
|
|
26881
|
+
center: [rightPadCenterX, 0, padThickness / 2]
|
|
26882
|
+
}
|
|
26883
|
+
),
|
|
26884
|
+
/* @__PURE__ */ jsx5(Colorize, { color: "#222", children: /* @__PURE__ */ jsxs(Union, { children: [
|
|
26885
|
+
/* @__PURE__ */ jsxs(Hull, { children: [
|
|
26886
|
+
/* @__PURE__ */ jsx5(Translate, { z: straightHeight, children: /* @__PURE__ */ jsx5(
|
|
26887
|
+
Cuboid,
|
|
26888
|
+
{
|
|
26889
|
+
size: [
|
|
26890
|
+
fullWidth - lowerTaperOffset / 2,
|
|
26891
|
+
bodyLength10 - lowerTaperOffset / 2,
|
|
26892
|
+
0.01
|
|
26893
|
+
]
|
|
26894
|
+
}
|
|
26895
|
+
) }),
|
|
26896
|
+
/* @__PURE__ */ jsx5(Translate, { z: 0.01, children: /* @__PURE__ */ jsx5(
|
|
26897
|
+
Cuboid,
|
|
26898
|
+
{
|
|
26899
|
+
size: [
|
|
26900
|
+
fullWidth - lowerTaperOffset,
|
|
26901
|
+
bodyLength10 - lowerTaperOffset,
|
|
26902
|
+
0.01
|
|
26903
|
+
]
|
|
26904
|
+
}
|
|
26905
|
+
) })
|
|
26906
|
+
] }),
|
|
26907
|
+
/* @__PURE__ */ jsxs(Hull, { children: [
|
|
26908
|
+
/* @__PURE__ */ jsx5(Translate, { z: straightHeight, children: /* @__PURE__ */ jsx5(Cuboid, { size: [fullWidth, bodyLength10, 0.01] }) }),
|
|
26909
|
+
/* @__PURE__ */ jsx5(Translate, { z: bodyHeight, children: /* @__PURE__ */ jsx5(
|
|
26910
|
+
Cuboid,
|
|
26911
|
+
{
|
|
26912
|
+
size: [fullWidth - taperOffset, bodyLength10 - taperOffset, 0.01]
|
|
26913
|
+
}
|
|
26914
|
+
) })
|
|
26915
|
+
] })
|
|
26916
|
+
] }) }),
|
|
26917
|
+
/* @__PURE__ */ jsx5(
|
|
26918
|
+
Cuboid,
|
|
26919
|
+
{
|
|
26920
|
+
color: "#777",
|
|
26921
|
+
size: [padThickness * 2.7, bodyLength10 - taperOffset, 0.02],
|
|
26922
|
+
center: [leftPadCenterX + taperOffset, 0, bodyHeight]
|
|
26923
|
+
}
|
|
26924
|
+
)
|
|
26925
|
+
] });
|
|
26926
|
+
};
|
|
26927
|
+
var SOD128 = () => {
|
|
26928
|
+
const fullWidth = 3.8;
|
|
26929
|
+
const bodyLength10 = 2.5;
|
|
26930
|
+
const bodyHeight = 1;
|
|
26931
|
+
const padWidth = 1.75;
|
|
26932
|
+
const padLength = 0.9;
|
|
26933
|
+
const padThickness = 0.2;
|
|
26934
|
+
const leftPadCenterX = -(fullWidth / 2 - 0.075);
|
|
26935
|
+
const rightPadCenterX = fullWidth / 2 - 0.075;
|
|
26936
|
+
const taperOffset = 0.4;
|
|
26937
|
+
const lowerTaperOffset = 0.05;
|
|
26938
|
+
const straightHeight = bodyHeight * 0.2;
|
|
26939
|
+
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
26940
|
+
/* @__PURE__ */ jsx5(
|
|
26941
|
+
Cuboid,
|
|
26942
|
+
{
|
|
26943
|
+
color: "#ccc",
|
|
26944
|
+
size: [padLength, padWidth, padThickness],
|
|
26945
|
+
center: [leftPadCenterX, 0, padThickness / 2]
|
|
26946
|
+
}
|
|
26947
|
+
),
|
|
26948
|
+
/* @__PURE__ */ jsx5(
|
|
26949
|
+
Cuboid,
|
|
26950
|
+
{
|
|
26951
|
+
color: "#ccc",
|
|
26952
|
+
size: [padLength, padWidth, padThickness],
|
|
26953
|
+
center: [rightPadCenterX, 0, padThickness / 2]
|
|
26954
|
+
}
|
|
26955
|
+
),
|
|
26956
|
+
/* @__PURE__ */ jsx5(Colorize, { color: "#222", children: /* @__PURE__ */ jsxs(Union, { children: [
|
|
26957
|
+
/* @__PURE__ */ jsxs(Hull, { children: [
|
|
26958
|
+
/* @__PURE__ */ jsx5(Translate, { z: straightHeight, children: /* @__PURE__ */ jsx5(
|
|
26959
|
+
Cuboid,
|
|
26960
|
+
{
|
|
26961
|
+
size: [
|
|
26962
|
+
fullWidth - lowerTaperOffset / 2,
|
|
26963
|
+
bodyLength10 - lowerTaperOffset / 2,
|
|
26964
|
+
0.01
|
|
26965
|
+
]
|
|
26966
|
+
}
|
|
26967
|
+
) }),
|
|
26968
|
+
/* @__PURE__ */ jsx5(Translate, { z: 0.01, children: /* @__PURE__ */ jsx5(
|
|
26969
|
+
Cuboid,
|
|
26970
|
+
{
|
|
26971
|
+
size: [
|
|
26972
|
+
fullWidth - lowerTaperOffset,
|
|
26973
|
+
bodyLength10 - lowerTaperOffset,
|
|
26974
|
+
0.01
|
|
26975
|
+
]
|
|
26976
|
+
}
|
|
26977
|
+
) })
|
|
26978
|
+
] }),
|
|
26979
|
+
/* @__PURE__ */ jsxs(Hull, { children: [
|
|
26980
|
+
/* @__PURE__ */ jsx5(Translate, { z: straightHeight, children: /* @__PURE__ */ jsx5(Cuboid, { size: [fullWidth, bodyLength10, 0.01] }) }),
|
|
26981
|
+
/* @__PURE__ */ jsx5(Translate, { z: bodyHeight, children: /* @__PURE__ */ jsx5(
|
|
26982
|
+
Cuboid,
|
|
26983
|
+
{
|
|
26984
|
+
size: [fullWidth - taperOffset, bodyLength10 - taperOffset, 0.01]
|
|
26985
|
+
}
|
|
26986
|
+
) })
|
|
26987
|
+
] })
|
|
26988
|
+
] }) }),
|
|
26989
|
+
/* @__PURE__ */ jsx5(
|
|
26990
|
+
Cuboid,
|
|
26991
|
+
{
|
|
26992
|
+
color: "#777",
|
|
26993
|
+
size: [padThickness * 2.7, bodyLength10 - taperOffset, 0.02],
|
|
26994
|
+
center: [leftPadCenterX + taperOffset, 0, bodyHeight]
|
|
26995
|
+
}
|
|
26996
|
+
)
|
|
26997
|
+
] });
|
|
26998
|
+
};
|
|
26752
26999
|
var SOD923 = () => {
|
|
26753
27000
|
const fullWidth = 0.8;
|
|
26754
27001
|
const bodyLength10 = 0.6;
|
|
@@ -26974,7 +27221,7 @@ var TQFP = () => {
|
|
|
26974
27221
|
height: 1.2,
|
|
26975
27222
|
chamferSize: 0.7,
|
|
26976
27223
|
taperRatio: 0.05,
|
|
26977
|
-
notchPosition: { x: 3.5, y: 3.5, z: 1.2 },
|
|
27224
|
+
notchPosition: { x: -3.5, y: 3.5, z: 1.2 },
|
|
26978
27225
|
notchRadius: 1.2 / 2
|
|
26979
27226
|
}
|
|
26980
27227
|
)
|
|
@@ -27158,7 +27405,7 @@ var LQFP = ({
|
|
|
27158
27405
|
taperRatio: 0.04,
|
|
27159
27406
|
chamferSize: 0.7,
|
|
27160
27407
|
notchPosition: {
|
|
27161
|
-
x: bodyLength10 / 2 - 1.5,
|
|
27408
|
+
x: -(bodyLength10 / 2 - 1.5),
|
|
27162
27409
|
y: bodyLength10 / 2 - 1.5,
|
|
27163
27410
|
z: 1.5
|
|
27164
27411
|
},
|
|
@@ -27267,7 +27514,7 @@ var DFN = ({
|
|
|
27267
27514
|
chamferSize: 0.2,
|
|
27268
27515
|
taperRatio: 0,
|
|
27269
27516
|
notchPosition: {
|
|
27270
|
-
x: bodyWidth / 2 - padLength,
|
|
27517
|
+
x: -(bodyWidth / 2 - padLength),
|
|
27271
27518
|
y: bodyLength10 / 2 - padLength,
|
|
27272
27519
|
z: bodyThickness
|
|
27273
27520
|
}
|
|
@@ -27501,140 +27748,788 @@ var MELF = ({
|
|
|
27501
27748
|
) }) })
|
|
27502
27749
|
] });
|
|
27503
27750
|
};
|
|
27504
|
-
var MS012 = ({
|
|
27505
|
-
pinCount,
|
|
27506
|
-
padContactLength = 0.6,
|
|
27507
|
-
leadWidth = 0.41,
|
|
27508
|
-
pitch = 1.27
|
|
27509
|
-
}) => {
|
|
27510
|
-
if (pinCount % 2 !== 0) {
|
|
27511
|
-
throw new Error("MS012 pinCount must be even");
|
|
27512
|
-
}
|
|
27513
|
-
const sidePinCount = pinCount / 2;
|
|
27514
|
-
const bodyWidth = 4.9;
|
|
27515
|
-
const bodyLength10 = 3.9;
|
|
27516
|
-
const pinOffsetToCenter = (sidePinCount - 1) * pitch / 2;
|
|
27517
|
-
const leadThickness = 0.2;
|
|
27751
|
+
var MS012 = ({
|
|
27752
|
+
pinCount,
|
|
27753
|
+
padContactLength = 0.6,
|
|
27754
|
+
leadWidth = 0.41,
|
|
27755
|
+
pitch = 1.27
|
|
27756
|
+
}) => {
|
|
27757
|
+
if (pinCount % 2 !== 0) {
|
|
27758
|
+
throw new Error("MS012 pinCount must be even");
|
|
27759
|
+
}
|
|
27760
|
+
const sidePinCount = pinCount / 2;
|
|
27761
|
+
const bodyWidth = 4.9;
|
|
27762
|
+
const bodyLength10 = 3.9;
|
|
27763
|
+
const pinOffsetToCenter = (sidePinCount - 1) * pitch / 2;
|
|
27764
|
+
const leadThickness = 0.2;
|
|
27765
|
+
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
27766
|
+
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx5(
|
|
27767
|
+
SmdChipLead,
|
|
27768
|
+
{
|
|
27769
|
+
position: {
|
|
27770
|
+
x: -bodyLength10 / 2 - padContactLength - 0.3,
|
|
27771
|
+
y: i * pitch - pinOffsetToCenter,
|
|
27772
|
+
z: leadThickness / 2
|
|
27773
|
+
},
|
|
27774
|
+
width: leadWidth,
|
|
27775
|
+
thickness: leadThickness,
|
|
27776
|
+
padContactLength,
|
|
27777
|
+
bodyDistance: padContactLength + 0.4,
|
|
27778
|
+
height: 0.85
|
|
27779
|
+
},
|
|
27780
|
+
i
|
|
27781
|
+
)),
|
|
27782
|
+
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx5(
|
|
27783
|
+
SmdChipLead,
|
|
27784
|
+
{
|
|
27785
|
+
rotation: Math.PI,
|
|
27786
|
+
position: {
|
|
27787
|
+
x: bodyLength10 / 2 + padContactLength + 0.3,
|
|
27788
|
+
y: i * pitch - pinOffsetToCenter,
|
|
27789
|
+
z: leadThickness / 2
|
|
27790
|
+
},
|
|
27791
|
+
width: leadWidth,
|
|
27792
|
+
thickness: leadThickness,
|
|
27793
|
+
padContactLength,
|
|
27794
|
+
bodyDistance: padContactLength + 0.4,
|
|
27795
|
+
height: 0.85
|
|
27796
|
+
},
|
|
27797
|
+
`right-${i}`
|
|
27798
|
+
)),
|
|
27799
|
+
/* @__PURE__ */ jsx5(
|
|
27800
|
+
ChipBody,
|
|
27801
|
+
{
|
|
27802
|
+
center: { x: 0, y: 0, z: leadThickness / 2 },
|
|
27803
|
+
width: bodyLength10,
|
|
27804
|
+
length: bodyWidth,
|
|
27805
|
+
height: 1.55,
|
|
27806
|
+
notchPosition: {
|
|
27807
|
+
x: -(bodyLength10 / 2 - 1),
|
|
27808
|
+
y: bodyWidth / 2 - 1,
|
|
27809
|
+
z: 1.55
|
|
27810
|
+
},
|
|
27811
|
+
heightAboveSurface: 0.17,
|
|
27812
|
+
taperRatio: 0.09
|
|
27813
|
+
}
|
|
27814
|
+
)
|
|
27815
|
+
] });
|
|
27816
|
+
};
|
|
27817
|
+
var MS013 = ({
|
|
27818
|
+
pinCount = 16,
|
|
27819
|
+
padContactLength = 0.6,
|
|
27820
|
+
leadWidth = 0.41,
|
|
27821
|
+
pitch = 1.27
|
|
27822
|
+
}) => {
|
|
27823
|
+
if (pinCount !== 16) {
|
|
27824
|
+
throw new Error("MS013 only supports 16 pins");
|
|
27825
|
+
}
|
|
27826
|
+
const sidePinCount = pinCount / 2;
|
|
27827
|
+
const bodyWidth = 7.5;
|
|
27828
|
+
const bodyLength10 = 10.3;
|
|
27829
|
+
const pinOffsetToCenter = (sidePinCount - 1) * pitch / 2;
|
|
27830
|
+
const leadThickness = 0.2;
|
|
27831
|
+
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
27832
|
+
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx5(
|
|
27833
|
+
SmdChipLead,
|
|
27834
|
+
{
|
|
27835
|
+
position: {
|
|
27836
|
+
x: -bodyWidth / 2 - padContactLength - 0.3,
|
|
27837
|
+
y: i * pitch - pinOffsetToCenter,
|
|
27838
|
+
z: leadThickness / 2
|
|
27839
|
+
},
|
|
27840
|
+
width: leadWidth,
|
|
27841
|
+
thickness: leadThickness,
|
|
27842
|
+
padContactLength,
|
|
27843
|
+
bodyDistance: padContactLength + 0.4,
|
|
27844
|
+
height: 0.85
|
|
27845
|
+
},
|
|
27846
|
+
i
|
|
27847
|
+
)),
|
|
27848
|
+
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx5(
|
|
27849
|
+
SmdChipLead,
|
|
27850
|
+
{
|
|
27851
|
+
rotation: Math.PI,
|
|
27852
|
+
position: {
|
|
27853
|
+
x: bodyWidth / 2 + padContactLength + 0.3,
|
|
27854
|
+
y: i * pitch - pinOffsetToCenter,
|
|
27855
|
+
z: leadThickness / 2
|
|
27856
|
+
},
|
|
27857
|
+
width: leadWidth,
|
|
27858
|
+
thickness: leadThickness,
|
|
27859
|
+
padContactLength,
|
|
27860
|
+
bodyDistance: padContactLength + 0.4,
|
|
27861
|
+
height: 0.85
|
|
27862
|
+
},
|
|
27863
|
+
`right-${i}`
|
|
27864
|
+
)),
|
|
27865
|
+
/* @__PURE__ */ jsx5(
|
|
27866
|
+
ChipBody,
|
|
27867
|
+
{
|
|
27868
|
+
center: { x: 0, y: 0, z: leadThickness / 2 },
|
|
27869
|
+
width: bodyWidth,
|
|
27870
|
+
length: bodyLength10,
|
|
27871
|
+
height: 1.1,
|
|
27872
|
+
notchPosition: {
|
|
27873
|
+
x: -(bodyWidth / 2 - 1.5),
|
|
27874
|
+
y: bodyLength10 / 2 - 1.5,
|
|
27875
|
+
z: 1.1
|
|
27876
|
+
},
|
|
27877
|
+
heightAboveSurface: 0.17,
|
|
27878
|
+
taperRatio: 0.05
|
|
27879
|
+
}
|
|
27880
|
+
)
|
|
27881
|
+
] });
|
|
27882
|
+
};
|
|
27883
|
+
var TO220 = () => {
|
|
27884
|
+
const fullLength10 = 20;
|
|
27885
|
+
const bodyLength10 = 9.9;
|
|
27886
|
+
const bodyHeight = 4.5;
|
|
27887
|
+
const zOffset = 1;
|
|
27888
|
+
const padWidth = 9.9;
|
|
27889
|
+
const padLength = 6.5;
|
|
27890
|
+
const padThickness = 1.3;
|
|
27891
|
+
const padHoleDiameter = 3;
|
|
27892
|
+
const prongWidth = 0.81;
|
|
27893
|
+
const prongLength = 16;
|
|
27894
|
+
const prongHeight = 0.5;
|
|
27895
|
+
const prongPitch = 2.7;
|
|
27896
|
+
const bodyWidth = padWidth;
|
|
27897
|
+
const bodyFrontX = fullLength10 - bodyLength10 / 2;
|
|
27898
|
+
const bodyBackX = fullLength10 + bodyLength10 / 2;
|
|
27899
|
+
const prongCenterX = bodyFrontX - prongLength / 2;
|
|
27900
|
+
const padCenterX = bodyBackX + padLength / 2;
|
|
27901
|
+
return /* @__PURE__ */ jsx5(Translate, { center: [0, 0, zOffset], children: /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
27902
|
+
/* @__PURE__ */ jsxs(Rotate, { rotation: [0, 55, -55], children: [
|
|
27903
|
+
/* @__PURE__ */ jsxs(Subtract, { children: [
|
|
27904
|
+
/* @__PURE__ */ jsx5(
|
|
27905
|
+
Cuboid,
|
|
27906
|
+
{
|
|
27907
|
+
color: "#ccc",
|
|
27908
|
+
size: [padLength + 0.1, padWidth, padThickness],
|
|
27909
|
+
center: [padCenterX, 0, padThickness - 2]
|
|
27910
|
+
}
|
|
27911
|
+
),
|
|
27912
|
+
/* @__PURE__ */ jsx5(
|
|
27913
|
+
Cylinder,
|
|
27914
|
+
{
|
|
27915
|
+
color: "black",
|
|
27916
|
+
center: [padCenterX, 0, padThickness - 2],
|
|
27917
|
+
radius: padHoleDiameter / 2,
|
|
27918
|
+
height: padThickness * 1.2
|
|
27919
|
+
}
|
|
27920
|
+
)
|
|
27921
|
+
] }),
|
|
27922
|
+
/* @__PURE__ */ jsx5(Colorize, { color: "#222", children: /* @__PURE__ */ jsx5(
|
|
27923
|
+
ChipBody,
|
|
27924
|
+
{
|
|
27925
|
+
width: bodyWidth,
|
|
27926
|
+
length: bodyLength10,
|
|
27927
|
+
height: bodyHeight,
|
|
27928
|
+
center: { x: fullLength10, y: 0, z: -2.4 },
|
|
27929
|
+
includeNotch: false,
|
|
27930
|
+
straightHeightRatio: 0.3,
|
|
27931
|
+
taperRatio: 0.04,
|
|
27932
|
+
heightAboveSurface: 1
|
|
27933
|
+
}
|
|
27934
|
+
) })
|
|
27935
|
+
] }),
|
|
27936
|
+
/* @__PURE__ */ jsx5(Rotate, { rotation: [0, 55, 55], children: Array.from({ length: 3 }).map((_, i) => {
|
|
27937
|
+
const x = prongCenterX;
|
|
27938
|
+
const y = (i - 1) * prongPitch;
|
|
27939
|
+
const z135 = -prongHeight - 0.6;
|
|
27940
|
+
return /* @__PURE__ */ jsxs(Colorize, { color: "gold", children: [
|
|
27941
|
+
/* @__PURE__ */ jsxs(Hull, { children: [
|
|
27942
|
+
/* @__PURE__ */ jsx5(Translate, { center: [bodyFrontX - bodyHeight / 2 + 0.1, y, z135], children: /* @__PURE__ */ jsx5(Cuboid, { size: [bodyHeight, prongWidth + 1, prongHeight] }) }),
|
|
27943
|
+
/* @__PURE__ */ jsx5(
|
|
27944
|
+
Translate,
|
|
27945
|
+
{
|
|
27946
|
+
center: [bodyFrontX - bodyHeight / 2 - 1 + 0.1, y, z135],
|
|
27947
|
+
children: /* @__PURE__ */ jsx5(Cuboid, { size: [bodyHeight, prongWidth, prongHeight] })
|
|
27948
|
+
}
|
|
27949
|
+
)
|
|
27950
|
+
] }),
|
|
27951
|
+
/* @__PURE__ */ jsx5(Translate, { center: [x, y, z135], children: /* @__PURE__ */ jsx5(Cuboid, { size: [prongLength + 0.1, prongWidth, prongHeight] }) })
|
|
27952
|
+
] }, `prong-${i}`);
|
|
27953
|
+
}) })
|
|
27954
|
+
] }) });
|
|
27955
|
+
};
|
|
27956
|
+
var SOT457 = () => {
|
|
27957
|
+
const fullWidth = 2.8;
|
|
27958
|
+
const bodyWidth = 1.6;
|
|
27959
|
+
const bodyLength10 = 2.9;
|
|
27960
|
+
const bodyHeight = 1.2;
|
|
27961
|
+
const leadWidth = 0.4;
|
|
27962
|
+
const leadThickness = 0.15;
|
|
27963
|
+
const leadHeight = 0.95;
|
|
27964
|
+
const padContactLength = 0.5;
|
|
27965
|
+
const padPitch = 0.95;
|
|
27966
|
+
const extendedBodyDistance = fullWidth - bodyWidth;
|
|
27967
|
+
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
27968
|
+
/* @__PURE__ */ jsx5(
|
|
27969
|
+
SmdChipLead,
|
|
27970
|
+
{
|
|
27971
|
+
rotation: Math.PI,
|
|
27972
|
+
position: {
|
|
27973
|
+
x: fullWidth / 2 + extendedBodyDistance / 4,
|
|
27974
|
+
y: -padPitch,
|
|
27975
|
+
z: leadThickness / 2
|
|
27976
|
+
},
|
|
27977
|
+
width: leadWidth,
|
|
27978
|
+
thickness: leadThickness,
|
|
27979
|
+
padContactLength,
|
|
27980
|
+
bodyDistance: extendedBodyDistance,
|
|
27981
|
+
height: leadHeight
|
|
27982
|
+
},
|
|
27983
|
+
1
|
|
27984
|
+
),
|
|
27985
|
+
/* @__PURE__ */ jsx5(
|
|
27986
|
+
SmdChipLead,
|
|
27987
|
+
{
|
|
27988
|
+
rotation: Math.PI,
|
|
27989
|
+
position: {
|
|
27990
|
+
x: fullWidth / 2 + extendedBodyDistance / 4,
|
|
27991
|
+
y: 0,
|
|
27992
|
+
z: leadThickness / 2
|
|
27993
|
+
},
|
|
27994
|
+
width: leadWidth,
|
|
27995
|
+
thickness: leadThickness,
|
|
27996
|
+
padContactLength,
|
|
27997
|
+
bodyDistance: extendedBodyDistance,
|
|
27998
|
+
height: leadHeight
|
|
27999
|
+
},
|
|
28000
|
+
2
|
|
28001
|
+
),
|
|
28002
|
+
/* @__PURE__ */ jsx5(
|
|
28003
|
+
SmdChipLead,
|
|
28004
|
+
{
|
|
28005
|
+
rotation: Math.PI,
|
|
28006
|
+
position: {
|
|
28007
|
+
x: fullWidth / 2 + extendedBodyDistance / 4,
|
|
28008
|
+
y: padPitch,
|
|
28009
|
+
z: leadThickness / 2
|
|
28010
|
+
},
|
|
28011
|
+
width: leadWidth,
|
|
28012
|
+
thickness: leadThickness,
|
|
28013
|
+
padContactLength,
|
|
28014
|
+
bodyDistance: extendedBodyDistance,
|
|
28015
|
+
height: leadHeight
|
|
28016
|
+
},
|
|
28017
|
+
3
|
|
28018
|
+
),
|
|
28019
|
+
/* @__PURE__ */ jsx5(
|
|
28020
|
+
SmdChipLead,
|
|
28021
|
+
{
|
|
28022
|
+
position: {
|
|
28023
|
+
x: -fullWidth / 2 - extendedBodyDistance / 4,
|
|
28024
|
+
y: 0,
|
|
28025
|
+
z: leadThickness / 2
|
|
28026
|
+
},
|
|
28027
|
+
width: leadWidth,
|
|
28028
|
+
thickness: leadThickness,
|
|
28029
|
+
padContactLength,
|
|
28030
|
+
bodyDistance: extendedBodyDistance,
|
|
28031
|
+
height: leadHeight
|
|
28032
|
+
},
|
|
28033
|
+
3
|
|
28034
|
+
),
|
|
28035
|
+
/* @__PURE__ */ jsx5(
|
|
28036
|
+
SmdChipLead,
|
|
28037
|
+
{
|
|
28038
|
+
position: {
|
|
28039
|
+
x: -fullWidth / 2 - extendedBodyDistance / 4,
|
|
28040
|
+
y: -padPitch,
|
|
28041
|
+
z: leadThickness / 2
|
|
28042
|
+
},
|
|
28043
|
+
width: leadWidth,
|
|
28044
|
+
thickness: leadThickness,
|
|
28045
|
+
padContactLength,
|
|
28046
|
+
bodyDistance: extendedBodyDistance,
|
|
28047
|
+
height: leadHeight
|
|
28048
|
+
},
|
|
28049
|
+
1
|
|
28050
|
+
),
|
|
28051
|
+
/* @__PURE__ */ jsx5(
|
|
28052
|
+
SmdChipLead,
|
|
28053
|
+
{
|
|
28054
|
+
position: {
|
|
28055
|
+
x: -fullWidth / 2 - extendedBodyDistance / 4,
|
|
28056
|
+
y: padPitch,
|
|
28057
|
+
z: leadThickness / 2
|
|
28058
|
+
},
|
|
28059
|
+
width: leadWidth,
|
|
28060
|
+
thickness: leadThickness,
|
|
28061
|
+
padContactLength,
|
|
28062
|
+
bodyDistance: extendedBodyDistance,
|
|
28063
|
+
height: leadHeight
|
|
28064
|
+
},
|
|
28065
|
+
2
|
|
28066
|
+
),
|
|
28067
|
+
/* @__PURE__ */ jsx5(
|
|
28068
|
+
ChipBody,
|
|
28069
|
+
{
|
|
28070
|
+
center: { x: 0, y: 0, z: 0 },
|
|
28071
|
+
width: bodyWidth,
|
|
28072
|
+
length: bodyLength10,
|
|
28073
|
+
height: bodyHeight,
|
|
28074
|
+
straightHeightRatio: 0.6,
|
|
28075
|
+
notchPosition: {
|
|
28076
|
+
x: -(bodyWidth / 2 - 0.4),
|
|
28077
|
+
y: bodyHeight / 2 + 0.4,
|
|
28078
|
+
z: bodyHeight + 0.05
|
|
28079
|
+
},
|
|
28080
|
+
notchRadius: 0.1
|
|
28081
|
+
}
|
|
28082
|
+
)
|
|
28083
|
+
] });
|
|
28084
|
+
};
|
|
28085
|
+
var SOT963 = () => {
|
|
28086
|
+
const bodyWidth = 0.8;
|
|
28087
|
+
const bodyLength10 = 1;
|
|
28088
|
+
const bodyHeight = 0.37;
|
|
28089
|
+
const terminalWidth = 0.15;
|
|
28090
|
+
const terminalLength = 0.19;
|
|
28091
|
+
const terminalThickness = 0.12;
|
|
28092
|
+
const pitch = 0.35;
|
|
28093
|
+
const pinsPerSide = 3;
|
|
28094
|
+
const pinSpan = pitch * (pinsPerSide - 1);
|
|
28095
|
+
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
28096
|
+
/* @__PURE__ */ jsx5(
|
|
28097
|
+
ChipBody,
|
|
28098
|
+
{
|
|
28099
|
+
center: { x: 0, y: 0, z: 0 },
|
|
28100
|
+
width: bodyWidth,
|
|
28101
|
+
length: bodyLength10,
|
|
28102
|
+
height: bodyHeight,
|
|
28103
|
+
heightAboveSurface: 0,
|
|
28104
|
+
color: "#1a1a1a",
|
|
28105
|
+
taperRatio: 0.15,
|
|
28106
|
+
straightHeightRatio: 0,
|
|
28107
|
+
notchPosition: {
|
|
28108
|
+
x: -bodyWidth / 4,
|
|
28109
|
+
y: pinSpan / 2.2,
|
|
28110
|
+
z: bodyHeight + 0.1
|
|
28111
|
+
}
|
|
28112
|
+
}
|
|
28113
|
+
),
|
|
28114
|
+
[0, 1, 2].map((i) => {
|
|
28115
|
+
const y = -pinSpan / 2 + i * pitch;
|
|
28116
|
+
return /* @__PURE__ */ jsx5(
|
|
28117
|
+
Cuboid,
|
|
28118
|
+
{
|
|
28119
|
+
center: [
|
|
28120
|
+
-bodyWidth / 2 + terminalLength / 2 - 0.1,
|
|
28121
|
+
y,
|
|
28122
|
+
terminalThickness / 2
|
|
28123
|
+
],
|
|
28124
|
+
size: [terminalLength, terminalWidth, terminalThickness]
|
|
28125
|
+
},
|
|
28126
|
+
`left-${i}`
|
|
28127
|
+
);
|
|
28128
|
+
}),
|
|
28129
|
+
[0, 1, 2].map((i) => {
|
|
28130
|
+
const y = -pinSpan / 2 + i * pitch;
|
|
28131
|
+
return /* @__PURE__ */ jsx5(
|
|
28132
|
+
Cuboid,
|
|
28133
|
+
{
|
|
28134
|
+
center: [
|
|
28135
|
+
bodyWidth / 2 - terminalLength / 2 + 0.1,
|
|
28136
|
+
y,
|
|
28137
|
+
terminalThickness / 2
|
|
28138
|
+
],
|
|
28139
|
+
size: [terminalLength, terminalWidth, terminalThickness]
|
|
28140
|
+
},
|
|
28141
|
+
`right-${i}`
|
|
28142
|
+
);
|
|
28143
|
+
})
|
|
28144
|
+
] });
|
|
28145
|
+
};
|
|
28146
|
+
var TO92 = () => {
|
|
28147
|
+
const bodyRadius = 2.4;
|
|
28148
|
+
const bodyHeight = 4.5;
|
|
28149
|
+
const flatCut = 1.1;
|
|
28150
|
+
const legWidth = 0.4;
|
|
28151
|
+
const legThickness = 0.25;
|
|
28152
|
+
const bodyZ = bodyHeight / 2;
|
|
28153
|
+
const bodyColor = "#222";
|
|
28154
|
+
const leadLength = 0.43;
|
|
28155
|
+
const leadTipSize = [leadLength, legWidth, 1.32];
|
|
28156
|
+
const leadSmallSize = [
|
|
28157
|
+
leadLength,
|
|
28158
|
+
legWidth,
|
|
28159
|
+
legThickness
|
|
28160
|
+
];
|
|
28161
|
+
const leadTipPos1 = [0, 0, -0.66];
|
|
28162
|
+
const leadMidPosA = [0, 0, -1.32];
|
|
28163
|
+
const leadMidPosB = [0, 1.28, -2.72];
|
|
28164
|
+
const leadTipPos2 = [0, 1.28, -8.9];
|
|
28165
|
+
const sideLeadZ = -7.5;
|
|
28166
|
+
return /* @__PURE__ */ jsxs(Translate, { center: [0, 1, 10.5], children: [
|
|
28167
|
+
/* @__PURE__ */ jsx5(Colorize, { color: bodyColor, children: /* @__PURE__ */ jsxs(Subtract, { children: [
|
|
28168
|
+
/* @__PURE__ */ jsx5(Translate, { center: [0, 0, bodyZ], children: /* @__PURE__ */ jsx5(Cylinder, { radius: bodyRadius, height: bodyHeight }) }),
|
|
28169
|
+
/* @__PURE__ */ jsx5(Translate, { center: [0, -(bodyRadius - flatCut / 2), bodyZ], children: /* @__PURE__ */ jsx5(Cuboid, { size: [bodyRadius * 2, flatCut, bodyHeight + 0.2] }) })
|
|
28170
|
+
] }) }),
|
|
28171
|
+
/* @__PURE__ */ jsx5(Translate, { center: leadTipPos1, children: /* @__PURE__ */ jsx5(Cuboid, { size: leadTipSize }) }),
|
|
28172
|
+
/* @__PURE__ */ jsxs(Hull, { children: [
|
|
28173
|
+
/* @__PURE__ */ jsx5(Translate, { center: leadMidPosA, children: /* @__PURE__ */ jsx5(Cuboid, { size: leadSmallSize }) }),
|
|
28174
|
+
/* @__PURE__ */ jsx5(Translate, { center: leadMidPosB, children: /* @__PURE__ */ jsx5(Cuboid, { size: leadSmallSize }) })
|
|
28175
|
+
] }),
|
|
28176
|
+
/* @__PURE__ */ jsx5(Translate, { center: leadTipPos2, children: /* @__PURE__ */ jsx5(Cuboid, { size: [leadLength, legWidth, 12.2] }) }),
|
|
28177
|
+
/* @__PURE__ */ jsx5(Translate, { center: [1.3, 0, sideLeadZ], children: /* @__PURE__ */ jsx5(Cuboid, { size: [leadLength, legWidth, 15] }) }),
|
|
28178
|
+
/* @__PURE__ */ jsx5(Translate, { center: [-1.3, 0, sideLeadZ], children: /* @__PURE__ */ jsx5(Cuboid, { size: [leadLength, legWidth, 15] }) })
|
|
28179
|
+
] });
|
|
28180
|
+
};
|
|
28181
|
+
var SOT363 = () => {
|
|
28182
|
+
const fullWidth = 2;
|
|
28183
|
+
const bodyWidth = 1.25;
|
|
28184
|
+
const bodyLength10 = 2;
|
|
28185
|
+
const bodyHeight = 1.1;
|
|
28186
|
+
const leadWidth = 0.25;
|
|
28187
|
+
const leadThickness = 0.15;
|
|
28188
|
+
const leadHeight = 0.85;
|
|
28189
|
+
const padContactLength = 0.3;
|
|
28190
|
+
const extendedBodyDistance = fullWidth - bodyWidth;
|
|
28191
|
+
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
28192
|
+
/* @__PURE__ */ jsx5(
|
|
28193
|
+
SmdChipLead,
|
|
28194
|
+
{
|
|
28195
|
+
rotation: Math.PI,
|
|
28196
|
+
position: {
|
|
28197
|
+
x: fullWidth / 2 + extendedBodyDistance / 4,
|
|
28198
|
+
y: -0.65,
|
|
28199
|
+
z: leadThickness / 2
|
|
28200
|
+
},
|
|
28201
|
+
width: leadWidth,
|
|
28202
|
+
thickness: leadThickness,
|
|
28203
|
+
padContactLength,
|
|
28204
|
+
bodyDistance: extendedBodyDistance,
|
|
28205
|
+
height: leadHeight
|
|
28206
|
+
},
|
|
28207
|
+
1
|
|
28208
|
+
),
|
|
28209
|
+
/* @__PURE__ */ jsx5(
|
|
28210
|
+
SmdChipLead,
|
|
28211
|
+
{
|
|
28212
|
+
rotation: Math.PI,
|
|
28213
|
+
position: {
|
|
28214
|
+
x: fullWidth / 2 + extendedBodyDistance / 4,
|
|
28215
|
+
y: 0,
|
|
28216
|
+
z: leadThickness / 2
|
|
28217
|
+
},
|
|
28218
|
+
width: leadWidth,
|
|
28219
|
+
thickness: leadThickness,
|
|
28220
|
+
padContactLength,
|
|
28221
|
+
bodyDistance: extendedBodyDistance,
|
|
28222
|
+
height: leadHeight
|
|
28223
|
+
},
|
|
28224
|
+
2
|
|
28225
|
+
),
|
|
28226
|
+
/* @__PURE__ */ jsx5(
|
|
28227
|
+
SmdChipLead,
|
|
28228
|
+
{
|
|
28229
|
+
rotation: Math.PI,
|
|
28230
|
+
position: {
|
|
28231
|
+
x: fullWidth / 2 + extendedBodyDistance / 4,
|
|
28232
|
+
y: 0.65,
|
|
28233
|
+
z: leadThickness / 2
|
|
28234
|
+
},
|
|
28235
|
+
width: leadWidth,
|
|
28236
|
+
thickness: leadThickness,
|
|
28237
|
+
padContactLength,
|
|
28238
|
+
bodyDistance: extendedBodyDistance,
|
|
28239
|
+
height: leadHeight
|
|
28240
|
+
},
|
|
28241
|
+
3
|
|
28242
|
+
),
|
|
28243
|
+
/* @__PURE__ */ jsx5(
|
|
28244
|
+
SmdChipLead,
|
|
28245
|
+
{
|
|
28246
|
+
position: {
|
|
28247
|
+
x: -fullWidth / 2 - extendedBodyDistance / 4,
|
|
28248
|
+
y: 0,
|
|
28249
|
+
z: leadThickness / 2
|
|
28250
|
+
},
|
|
28251
|
+
width: leadWidth,
|
|
28252
|
+
thickness: leadThickness,
|
|
28253
|
+
padContactLength,
|
|
28254
|
+
bodyDistance: extendedBodyDistance,
|
|
28255
|
+
height: leadHeight
|
|
28256
|
+
},
|
|
28257
|
+
3
|
|
28258
|
+
),
|
|
28259
|
+
/* @__PURE__ */ jsx5(
|
|
28260
|
+
SmdChipLead,
|
|
28261
|
+
{
|
|
28262
|
+
position: {
|
|
28263
|
+
x: -fullWidth / 2 - extendedBodyDistance / 4,
|
|
28264
|
+
y: -0.65,
|
|
28265
|
+
z: leadThickness / 2
|
|
28266
|
+
},
|
|
28267
|
+
width: leadWidth,
|
|
28268
|
+
thickness: leadThickness,
|
|
28269
|
+
padContactLength,
|
|
28270
|
+
bodyDistance: extendedBodyDistance,
|
|
28271
|
+
height: leadHeight
|
|
28272
|
+
},
|
|
28273
|
+
1
|
|
28274
|
+
),
|
|
28275
|
+
/* @__PURE__ */ jsx5(
|
|
28276
|
+
SmdChipLead,
|
|
28277
|
+
{
|
|
28278
|
+
position: {
|
|
28279
|
+
x: -fullWidth / 2 - extendedBodyDistance / 4,
|
|
28280
|
+
y: 0.65,
|
|
28281
|
+
z: leadThickness / 2
|
|
28282
|
+
},
|
|
28283
|
+
width: leadWidth,
|
|
28284
|
+
thickness: leadThickness,
|
|
28285
|
+
padContactLength,
|
|
28286
|
+
bodyDistance: extendedBodyDistance,
|
|
28287
|
+
height: leadHeight
|
|
28288
|
+
},
|
|
28289
|
+
2
|
|
28290
|
+
),
|
|
28291
|
+
/* @__PURE__ */ jsx5(
|
|
28292
|
+
ChipBody,
|
|
28293
|
+
{
|
|
28294
|
+
center: { x: 0, y: 0, z: 0 },
|
|
28295
|
+
width: bodyWidth,
|
|
28296
|
+
length: bodyLength10,
|
|
28297
|
+
height: bodyHeight,
|
|
28298
|
+
straightHeightRatio: 0.6,
|
|
28299
|
+
notchPosition: {
|
|
28300
|
+
x: -(bodyWidth / 2 - 0.25),
|
|
28301
|
+
y: bodyHeight / 2 + 0.2,
|
|
28302
|
+
z: bodyHeight
|
|
28303
|
+
},
|
|
28304
|
+
heightAboveSurface: 0.1
|
|
28305
|
+
}
|
|
28306
|
+
)
|
|
28307
|
+
] });
|
|
28308
|
+
};
|
|
28309
|
+
var SOT_363_default = SOT363;
|
|
28310
|
+
var SOT886 = () => {
|
|
28311
|
+
const bodyWidth = 1;
|
|
28312
|
+
const bodyLength10 = 1.45;
|
|
28313
|
+
const bodyHeight = 0.5;
|
|
28314
|
+
const terminalWidth = 0.2;
|
|
28315
|
+
const terminalLength = 0.3;
|
|
28316
|
+
const terminalThickness = 0.05;
|
|
28317
|
+
const pitch = 0.5;
|
|
28318
|
+
const pinsPerSide = 3;
|
|
28319
|
+
const pinSpan = pitch * (pinsPerSide - 1);
|
|
28320
|
+
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
28321
|
+
/* @__PURE__ */ jsx5(
|
|
28322
|
+
ChipBody,
|
|
28323
|
+
{
|
|
28324
|
+
center: { x: 0, y: 0, z: terminalThickness },
|
|
28325
|
+
width: bodyWidth,
|
|
28326
|
+
length: bodyLength10,
|
|
28327
|
+
height: bodyHeight,
|
|
28328
|
+
heightAboveSurface: 0,
|
|
28329
|
+
color: "#1a1a1a",
|
|
28330
|
+
taperRatio: 0,
|
|
28331
|
+
includeNotch: false
|
|
28332
|
+
}
|
|
28333
|
+
),
|
|
28334
|
+
[0, 1, 2].map((i) => {
|
|
28335
|
+
const y = -pinSpan / 2 + i * pitch;
|
|
28336
|
+
return /* @__PURE__ */ jsx5(
|
|
28337
|
+
Cuboid,
|
|
28338
|
+
{
|
|
28339
|
+
center: [
|
|
28340
|
+
-bodyWidth / 2 + terminalLength / 2,
|
|
28341
|
+
y,
|
|
28342
|
+
terminalThickness / 2
|
|
28343
|
+
],
|
|
28344
|
+
size: [terminalLength, terminalWidth, terminalThickness]
|
|
28345
|
+
},
|
|
28346
|
+
`left-${i}`
|
|
28347
|
+
);
|
|
28348
|
+
}),
|
|
28349
|
+
[0, 1, 2].map((i) => {
|
|
28350
|
+
const y = -pinSpan / 2 + i * pitch;
|
|
28351
|
+
return /* @__PURE__ */ jsx5(
|
|
28352
|
+
Cuboid,
|
|
28353
|
+
{
|
|
28354
|
+
center: [
|
|
28355
|
+
bodyWidth / 2 - terminalLength / 2,
|
|
28356
|
+
y,
|
|
28357
|
+
terminalThickness / 2
|
|
28358
|
+
],
|
|
28359
|
+
size: [terminalLength, terminalWidth, terminalThickness]
|
|
28360
|
+
},
|
|
28361
|
+
`right-${i}`
|
|
28362
|
+
);
|
|
28363
|
+
})
|
|
28364
|
+
] });
|
|
28365
|
+
};
|
|
28366
|
+
var SOD323 = () => {
|
|
28367
|
+
const fullWidth = 2.5;
|
|
28368
|
+
const bodyLength10 = 1.25;
|
|
28369
|
+
const bodyWidth = 1.7;
|
|
28370
|
+
const bodyHeight = 0.95;
|
|
28371
|
+
const leadWidth = 0.3;
|
|
28372
|
+
const leadThickness = 0.175;
|
|
28373
|
+
const padContactLength = 0.3;
|
|
28374
|
+
const padCenterX = bodyWidth / 2;
|
|
28375
|
+
const bodyDistance = 0.45;
|
|
28376
|
+
const leadHeight = 0.7;
|
|
27518
28377
|
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
27519
|
-
|
|
28378
|
+
/* @__PURE__ */ jsx5(
|
|
27520
28379
|
SmdChipLead,
|
|
27521
28380
|
{
|
|
27522
28381
|
position: {
|
|
27523
|
-
x: -
|
|
27524
|
-
y:
|
|
28382
|
+
x: -fullWidth / 2,
|
|
28383
|
+
y: 0,
|
|
27525
28384
|
z: leadThickness / 2
|
|
27526
28385
|
},
|
|
27527
28386
|
width: leadWidth,
|
|
27528
28387
|
thickness: leadThickness,
|
|
27529
28388
|
padContactLength,
|
|
27530
|
-
bodyDistance
|
|
27531
|
-
height:
|
|
28389
|
+
bodyDistance,
|
|
28390
|
+
height: leadHeight
|
|
27532
28391
|
},
|
|
27533
|
-
|
|
27534
|
-
)
|
|
27535
|
-
|
|
28392
|
+
1
|
|
28393
|
+
),
|
|
28394
|
+
/* @__PURE__ */ jsx5(
|
|
27536
28395
|
SmdChipLead,
|
|
27537
28396
|
{
|
|
27538
28397
|
rotation: Math.PI,
|
|
27539
28398
|
position: {
|
|
27540
|
-
x:
|
|
27541
|
-
y:
|
|
28399
|
+
x: fullWidth / 2,
|
|
28400
|
+
y: 0,
|
|
27542
28401
|
z: leadThickness / 2
|
|
27543
28402
|
},
|
|
27544
28403
|
width: leadWidth,
|
|
27545
28404
|
thickness: leadThickness,
|
|
27546
28405
|
padContactLength,
|
|
27547
|
-
bodyDistance
|
|
27548
|
-
height:
|
|
28406
|
+
bodyDistance,
|
|
28407
|
+
height: leadHeight
|
|
27549
28408
|
},
|
|
27550
|
-
|
|
27551
|
-
)
|
|
27552
|
-
/* @__PURE__ */ jsx5(
|
|
28409
|
+
1
|
|
28410
|
+
),
|
|
28411
|
+
/* @__PURE__ */ jsx5(Colorize, { color: "#222", children: /* @__PURE__ */ jsx5(
|
|
27553
28412
|
ChipBody,
|
|
27554
28413
|
{
|
|
27555
|
-
center: { x: 0, y: 0, z:
|
|
27556
|
-
width:
|
|
27557
|
-
length:
|
|
27558
|
-
height:
|
|
27559
|
-
|
|
27560
|
-
|
|
27561
|
-
|
|
28414
|
+
center: { x: 0, y: 0, z: 0 },
|
|
28415
|
+
width: bodyWidth,
|
|
28416
|
+
length: bodyLength10,
|
|
28417
|
+
height: bodyHeight,
|
|
28418
|
+
includeNotch: false,
|
|
28419
|
+
taperRatio: 0.06,
|
|
28420
|
+
straightHeightRatio: 0.7,
|
|
28421
|
+
heightAboveSurface: 0.05
|
|
28422
|
+
}
|
|
28423
|
+
) }),
|
|
28424
|
+
/* @__PURE__ */ jsx5(
|
|
28425
|
+
Cuboid,
|
|
28426
|
+
{
|
|
28427
|
+
color: "#777",
|
|
28428
|
+
size: [bodyWidth / 3, bodyLength10 - 0.075, 0.02],
|
|
28429
|
+
center: [-padCenterX * 2 / 3 + 0.035, 0, bodyHeight + 0.05]
|
|
27562
28430
|
}
|
|
27563
28431
|
)
|
|
27564
28432
|
] });
|
|
27565
28433
|
};
|
|
27566
|
-
var
|
|
27567
|
-
const
|
|
27568
|
-
const bodyLength10 =
|
|
27569
|
-
const bodyHeight =
|
|
27570
|
-
const
|
|
27571
|
-
const
|
|
27572
|
-
const
|
|
27573
|
-
const
|
|
27574
|
-
const
|
|
27575
|
-
const
|
|
27576
|
-
const
|
|
27577
|
-
|
|
27578
|
-
|
|
27579
|
-
|
|
27580
|
-
|
|
27581
|
-
|
|
27582
|
-
|
|
27583
|
-
|
|
27584
|
-
|
|
27585
|
-
|
|
27586
|
-
|
|
27587
|
-
|
|
28434
|
+
var SOD323F = () => {
|
|
28435
|
+
const fullWidth = 1.7;
|
|
28436
|
+
const bodyLength10 = 1.25;
|
|
28437
|
+
const bodyHeight = 0.725;
|
|
28438
|
+
const padWidth = 0.325;
|
|
28439
|
+
const padLength = 0.4;
|
|
28440
|
+
const padThickness = 0.175;
|
|
28441
|
+
const leftPadCenterX = -fullWidth / 2 - padLength / 2;
|
|
28442
|
+
const rightPadCenterX = fullWidth / 2 + padLength / 2;
|
|
28443
|
+
const taperOffset = 0.2;
|
|
28444
|
+
const straightHeight = padThickness;
|
|
28445
|
+
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
28446
|
+
/* @__PURE__ */ jsx5(
|
|
28447
|
+
Cuboid,
|
|
28448
|
+
{
|
|
28449
|
+
color: "#ccc",
|
|
28450
|
+
size: [padLength, padWidth, padThickness],
|
|
28451
|
+
center: [leftPadCenterX, 0, padThickness / 2]
|
|
28452
|
+
}
|
|
28453
|
+
),
|
|
28454
|
+
/* @__PURE__ */ jsx5(
|
|
28455
|
+
Cuboid,
|
|
28456
|
+
{
|
|
28457
|
+
color: "#ccc",
|
|
28458
|
+
size: [padLength, padWidth, padThickness],
|
|
28459
|
+
center: [rightPadCenterX, 0, padThickness / 2]
|
|
28460
|
+
}
|
|
28461
|
+
),
|
|
28462
|
+
/* @__PURE__ */ jsx5(Colorize, { color: "#222", children: /* @__PURE__ */ jsxs(Union, { children: [
|
|
28463
|
+
/* @__PURE__ */ jsx5(Translate, { z: straightHeight / 2, children: /* @__PURE__ */ jsx5(Cuboid, { size: [fullWidth, bodyLength10, straightHeight] }) }),
|
|
28464
|
+
/* @__PURE__ */ jsxs(Hull, { children: [
|
|
28465
|
+
/* @__PURE__ */ jsx5(Translate, { z: straightHeight, children: /* @__PURE__ */ jsx5(Cuboid, { size: [fullWidth, bodyLength10, 0.01] }) }),
|
|
28466
|
+
/* @__PURE__ */ jsx5(Translate, { z: bodyHeight, children: /* @__PURE__ */ jsx5(
|
|
27588
28467
|
Cuboid,
|
|
27589
28468
|
{
|
|
27590
|
-
|
|
27591
|
-
size: [padLength + 0.1, padWidth, padThickness],
|
|
27592
|
-
center: [padCenterX, 0, padThickness - 2]
|
|
27593
|
-
}
|
|
27594
|
-
),
|
|
27595
|
-
/* @__PURE__ */ jsx5(
|
|
27596
|
-
Cylinder,
|
|
27597
|
-
{
|
|
27598
|
-
color: "black",
|
|
27599
|
-
center: [padCenterX, 0, padThickness - 2],
|
|
27600
|
-
radius: padHoleDiameter / 2,
|
|
27601
|
-
height: padThickness * 1.2
|
|
28469
|
+
size: [fullWidth - taperOffset, bodyLength10 - taperOffset, 0.01]
|
|
27602
28470
|
}
|
|
27603
|
-
)
|
|
27604
|
-
] })
|
|
27605
|
-
|
|
27606
|
-
|
|
27607
|
-
|
|
27608
|
-
|
|
27609
|
-
|
|
27610
|
-
|
|
27611
|
-
|
|
27612
|
-
|
|
27613
|
-
|
|
27614
|
-
|
|
27615
|
-
|
|
27616
|
-
|
|
27617
|
-
|
|
27618
|
-
|
|
27619
|
-
|
|
27620
|
-
|
|
27621
|
-
|
|
27622
|
-
|
|
27623
|
-
|
|
27624
|
-
|
|
27625
|
-
|
|
27626
|
-
|
|
27627
|
-
|
|
27628
|
-
|
|
27629
|
-
|
|
27630
|
-
|
|
27631
|
-
|
|
27632
|
-
|
|
27633
|
-
|
|
27634
|
-
|
|
27635
|
-
|
|
27636
|
-
|
|
27637
|
-
|
|
28471
|
+
) })
|
|
28472
|
+
] })
|
|
28473
|
+
] }) }),
|
|
28474
|
+
/* @__PURE__ */ jsx5(
|
|
28475
|
+
Cuboid,
|
|
28476
|
+
{
|
|
28477
|
+
color: "#777",
|
|
28478
|
+
size: [fullWidth / 3, bodyLength10 - taperOffset, 0.02],
|
|
28479
|
+
center: [leftPadCenterX + fullWidth / 4.4 + taperOffset, 0, bodyHeight]
|
|
28480
|
+
}
|
|
28481
|
+
)
|
|
28482
|
+
] });
|
|
28483
|
+
};
|
|
28484
|
+
var SOD323FL = () => {
|
|
28485
|
+
const fullWidth = 1.775;
|
|
28486
|
+
const bodyLength10 = 1.25;
|
|
28487
|
+
const bodyHeight = 0.725;
|
|
28488
|
+
const padWidth = 0.325;
|
|
28489
|
+
const padLength = 0.4;
|
|
28490
|
+
const padThickness = 0.13;
|
|
28491
|
+
const leftPadCenterX = -fullWidth / 2 - padLength / 2 + 0.04;
|
|
28492
|
+
const rightPadCenterX = fullWidth / 2 + padLength / 2 - 0.04;
|
|
28493
|
+
const taperOffset = 0.2;
|
|
28494
|
+
return /* @__PURE__ */ jsxs(Fragment22, { children: [
|
|
28495
|
+
/* @__PURE__ */ jsx5(
|
|
28496
|
+
Cuboid,
|
|
28497
|
+
{
|
|
28498
|
+
color: "#ccc",
|
|
28499
|
+
size: [padLength, padWidth, padThickness],
|
|
28500
|
+
center: [leftPadCenterX, 0, padThickness / 2]
|
|
28501
|
+
}
|
|
28502
|
+
),
|
|
28503
|
+
/* @__PURE__ */ jsx5(
|
|
28504
|
+
Cuboid,
|
|
28505
|
+
{
|
|
28506
|
+
color: "#ccc",
|
|
28507
|
+
size: [padLength, padWidth, padThickness],
|
|
28508
|
+
center: [rightPadCenterX, 0, padThickness / 2]
|
|
28509
|
+
}
|
|
28510
|
+
),
|
|
28511
|
+
/* @__PURE__ */ jsx5(Colorize, { color: "#222", children: /* @__PURE__ */ jsx5(
|
|
28512
|
+
ChipBody,
|
|
28513
|
+
{
|
|
28514
|
+
width: fullWidth,
|
|
28515
|
+
length: bodyLength10,
|
|
28516
|
+
height: bodyHeight,
|
|
28517
|
+
center: { x: 0, y: 0, z: 0 },
|
|
28518
|
+
heightAboveSurface: 0,
|
|
28519
|
+
straightHeightRatio: 0.7,
|
|
28520
|
+
taperRatio: 0.06,
|
|
28521
|
+
includeNotch: false
|
|
28522
|
+
}
|
|
28523
|
+
) }),
|
|
28524
|
+
/* @__PURE__ */ jsx5(
|
|
28525
|
+
Cuboid,
|
|
28526
|
+
{
|
|
28527
|
+
color: "#777",
|
|
28528
|
+
size: [fullWidth / 3, bodyLength10 - 0.05, 0.02],
|
|
28529
|
+
center: [leftPadCenterX + fullWidth / 4.4 + taperOffset, 0, bodyHeight]
|
|
28530
|
+
}
|
|
28531
|
+
)
|
|
28532
|
+
] });
|
|
27638
28533
|
};
|
|
27639
28534
|
var Footprinter3d = ({ footprint }) => {
|
|
27640
28535
|
const fpJson = fp.string(footprint).json();
|
|
@@ -27726,11 +28621,30 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
27726
28621
|
}
|
|
27727
28622
|
);
|
|
27728
28623
|
}
|
|
27729
|
-
case "pinrow":
|
|
28624
|
+
case "pinrow": {
|
|
28625
|
+
const rowsMatch = footprint.match(/_rows(\d+)/);
|
|
28626
|
+
const rows = rowsMatch && rowsMatch[1] ? parseInt(rowsMatch[1], 10) : 1;
|
|
27730
28627
|
if (fpJson.male)
|
|
27731
|
-
return /* @__PURE__ */ jsx5(
|
|
28628
|
+
return /* @__PURE__ */ jsx5(
|
|
28629
|
+
PinRow,
|
|
28630
|
+
{
|
|
28631
|
+
numberOfPins: fpJson.num_pins,
|
|
28632
|
+
pitch: fpJson.p,
|
|
28633
|
+
invert: fpJson.invert,
|
|
28634
|
+
faceup: fpJson.faceup,
|
|
28635
|
+
rows
|
|
28636
|
+
}
|
|
28637
|
+
);
|
|
27732
28638
|
if (fpJson.female)
|
|
27733
|
-
return /* @__PURE__ */ jsx5(
|
|
28639
|
+
return /* @__PURE__ */ jsx5(
|
|
28640
|
+
FemaleHeader,
|
|
28641
|
+
{
|
|
28642
|
+
numberOfPins: fpJson.num_pins,
|
|
28643
|
+
pitch: fpJson.p,
|
|
28644
|
+
rows
|
|
28645
|
+
}
|
|
28646
|
+
);
|
|
28647
|
+
}
|
|
27734
28648
|
case "cap": {
|
|
27735
28649
|
switch (fpJson.imperial) {
|
|
27736
28650
|
case "0402":
|
|
@@ -27755,10 +28669,24 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
27755
28669
|
}
|
|
27756
28670
|
case "sot235":
|
|
27757
28671
|
return /* @__PURE__ */ jsx5(SOT_235_default, {});
|
|
28672
|
+
case "sot457":
|
|
28673
|
+
return /* @__PURE__ */ jsx5(SOT457, {});
|
|
27758
28674
|
case "sot223":
|
|
27759
28675
|
return /* @__PURE__ */ jsx5(SOT223, {});
|
|
28676
|
+
case "sot23w":
|
|
28677
|
+
return /* @__PURE__ */ jsx5(SOT23W, {});
|
|
27760
28678
|
case "sot323":
|
|
27761
28679
|
return /* @__PURE__ */ jsx5(SOT323, {});
|
|
28680
|
+
case "sod323f":
|
|
28681
|
+
return /* @__PURE__ */ jsx5(SOD323F, {});
|
|
28682
|
+
case "sod323fl":
|
|
28683
|
+
return /* @__PURE__ */ jsx5(SOD323FL, {});
|
|
28684
|
+
case "sot363":
|
|
28685
|
+
return /* @__PURE__ */ jsx5(SOT_363_default, {});
|
|
28686
|
+
case "sot886":
|
|
28687
|
+
return /* @__PURE__ */ jsx5(SOT886, {});
|
|
28688
|
+
case "sot963":
|
|
28689
|
+
return /* @__PURE__ */ jsx5(SOT963, {});
|
|
27762
28690
|
case "pushbutton":
|
|
27763
28691
|
return /* @__PURE__ */ jsx5(
|
|
27764
28692
|
PushButton,
|
|
@@ -27795,6 +28723,12 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
27795
28723
|
return /* @__PURE__ */ jsx5(SOD123F, {});
|
|
27796
28724
|
case "sod123fl":
|
|
27797
28725
|
return /* @__PURE__ */ jsx5(SOD123FL, {});
|
|
28726
|
+
case "sod123w":
|
|
28727
|
+
return /* @__PURE__ */ jsx5(SOD123W, {});
|
|
28728
|
+
case "sod128":
|
|
28729
|
+
return /* @__PURE__ */ jsx5(SOD128, {});
|
|
28730
|
+
case "sod323":
|
|
28731
|
+
return /* @__PURE__ */ jsx5(SOD323, {});
|
|
27798
28732
|
case "sod923":
|
|
27799
28733
|
return /* @__PURE__ */ jsx5(SOD923, {});
|
|
27800
28734
|
case "hc49":
|
|
@@ -27815,10 +28749,22 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
27815
28749
|
pitch: fpJson.p
|
|
27816
28750
|
}
|
|
27817
28751
|
);
|
|
28752
|
+
case "ms013":
|
|
28753
|
+
return /* @__PURE__ */ jsx5(
|
|
28754
|
+
MS013,
|
|
28755
|
+
{
|
|
28756
|
+
pinCount: fpJson.num_pins,
|
|
28757
|
+
padContactLength: fpJson.pl,
|
|
28758
|
+
leadWidth: fpJson.pw,
|
|
28759
|
+
pitch: fpJson.p
|
|
28760
|
+
}
|
|
28761
|
+
);
|
|
27818
28762
|
case "sot723":
|
|
27819
28763
|
return /* @__PURE__ */ jsx5(SOT723, {});
|
|
27820
28764
|
case "to220":
|
|
27821
28765
|
return /* @__PURE__ */ jsx5(TO220, {});
|
|
28766
|
+
case "to92":
|
|
28767
|
+
return /* @__PURE__ */ jsx5(TO92, {});
|
|
27822
28768
|
}
|
|
27823
28769
|
const colorMatch = footprint.match(/_color\(([^)]+)\)/);
|
|
27824
28770
|
const color = colorMatch ? colorMatch[1] : void 0;
|
|
@@ -28509,7 +29455,7 @@ import * as THREE15 from "three";
|
|
|
28509
29455
|
// package.json
|
|
28510
29456
|
var package_default = {
|
|
28511
29457
|
name: "@tscircuit/3d-viewer",
|
|
28512
|
-
version: "0.0.
|
|
29458
|
+
version: "0.0.472",
|
|
28513
29459
|
main: "./dist/index.js",
|
|
28514
29460
|
module: "./dist/index.js",
|
|
28515
29461
|
type: "module",
|
|
@@ -28576,7 +29522,7 @@ var package_default = {
|
|
|
28576
29522
|
"circuit-json": "0.0.325",
|
|
28577
29523
|
"circuit-to-svg": "^0.0.179",
|
|
28578
29524
|
debug: "^4.4.0",
|
|
28579
|
-
"jscad-electronics": "^0.0.
|
|
29525
|
+
"jscad-electronics": "^0.0.109",
|
|
28580
29526
|
"jscad-planner": "^0.0.13",
|
|
28581
29527
|
jsdom: "^26.0.0",
|
|
28582
29528
|
"manifold-3d": "^3.2.1",
|
|
@@ -32420,6 +33366,7 @@ function createSilkscreenTextureForLayer({
|
|
|
32420
33366
|
const pcbSilkscreenRects = su6(circuitJson).pcb_silkscreen_rect.list();
|
|
32421
33367
|
const pcbSilkscreenCircles = su6(circuitJson).pcb_silkscreen_circle.list();
|
|
32422
33368
|
const pcbFabricationNoteRects = su6(circuitJson).pcb_fabrication_note_rect.list();
|
|
33369
|
+
const pcbNoteLines = su6(circuitJson).pcb_note_line.list();
|
|
32423
33370
|
const textsOnLayer = pcbSilkscreenTexts.filter((t) => t.layer === layer);
|
|
32424
33371
|
const pathsOnLayer = pcbSilkscreenPaths.filter((p) => p.layer === layer);
|
|
32425
33372
|
const linesOnLayer = pcbSilkscreenLines.filter((l) => l.layer === layer);
|
|
@@ -32428,7 +33375,10 @@ function createSilkscreenTextureForLayer({
|
|
|
32428
33375
|
const fabricationNoteRectsOnLayer = pcbFabricationNoteRects.filter(
|
|
32429
33376
|
(r) => r.layer === layer
|
|
32430
33377
|
);
|
|
32431
|
-
|
|
33378
|
+
const noteLinesOnLayer = pcbNoteLines.filter(
|
|
33379
|
+
(l) => l.layer === layer
|
|
33380
|
+
);
|
|
33381
|
+
if (textsOnLayer.length === 0 && pathsOnLayer.length === 0 && linesOnLayer.length === 0 && rectsOnLayer.length === 0 && circlesOnLayer.length === 0 && fabricationNoteRectsOnLayer.length === 0 && noteLinesOnLayer.length === 0) {
|
|
32432
33382
|
return null;
|
|
32433
33383
|
}
|
|
32434
33384
|
const canvas = document.createElement("canvas");
|
|
@@ -32459,6 +33409,36 @@ function createSilkscreenTextureForLayer({
|
|
|
32459
33409
|
ctx.lineTo(canvasXFromPcb(endXmm), canvasYFromPcb(endYmm));
|
|
32460
33410
|
ctx.stroke();
|
|
32461
33411
|
});
|
|
33412
|
+
noteLinesOnLayer.forEach((lineEl) => {
|
|
33413
|
+
const startXmm = parseDimensionToMm(lineEl.x1) ?? 0;
|
|
33414
|
+
const startYmm = parseDimensionToMm(lineEl.y1) ?? 0;
|
|
33415
|
+
const endXmm = parseDimensionToMm(lineEl.x2) ?? 0;
|
|
33416
|
+
const endYmm = parseDimensionToMm(lineEl.y2) ?? 0;
|
|
33417
|
+
if (startXmm === endXmm && startYmm === endYmm) return;
|
|
33418
|
+
ctx.save();
|
|
33419
|
+
let strokeColor = silkscreenColor;
|
|
33420
|
+
if (lineEl.color) {
|
|
33421
|
+
strokeColor = parseFabricationNoteColor(lineEl.color);
|
|
33422
|
+
} else {
|
|
33423
|
+
strokeColor = "rgb(255, 243, 204)";
|
|
33424
|
+
}
|
|
33425
|
+
ctx.strokeStyle = strokeColor;
|
|
33426
|
+
ctx.beginPath();
|
|
33427
|
+
ctx.lineWidth = coerceDimensionToMm(lineEl.stroke_width, 0.1) * traceTextureResolution;
|
|
33428
|
+
ctx.lineCap = "round";
|
|
33429
|
+
const isDashed = lineEl.is_dashed ?? false;
|
|
33430
|
+
if (isDashed) {
|
|
33431
|
+
const dashLength = Math.max(ctx.lineWidth * 2, 1);
|
|
33432
|
+
ctx.setLineDash([dashLength, dashLength]);
|
|
33433
|
+
}
|
|
33434
|
+
ctx.moveTo(canvasXFromPcb(startXmm), canvasYFromPcb(startYmm));
|
|
33435
|
+
ctx.lineTo(canvasXFromPcb(endXmm), canvasYFromPcb(endYmm));
|
|
33436
|
+
ctx.stroke();
|
|
33437
|
+
if (isDashed) {
|
|
33438
|
+
ctx.setLineDash([]);
|
|
33439
|
+
}
|
|
33440
|
+
ctx.restore();
|
|
33441
|
+
});
|
|
32462
33442
|
pathsOnLayer.forEach((path) => {
|
|
32463
33443
|
if (path.route.length < 2) return;
|
|
32464
33444
|
ctx.beginPath();
|