@tscircuit/3d-viewer 0.0.331 → 0.0.333
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 +69 -62
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -16749,10 +16749,9 @@ var u_curve = Array.from(
|
|
|
16749
16749
|
function convertMilToMm(value) {
|
|
16750
16750
|
if (typeof value === "string") {
|
|
16751
16751
|
if (value.trim().toLowerCase().endsWith("mil")) {
|
|
16752
|
-
|
|
16753
|
-
return num * 0.0254;
|
|
16752
|
+
return parseFloat(value) * 0.0254;
|
|
16754
16753
|
}
|
|
16755
|
-
return
|
|
16754
|
+
return parseFloat(value);
|
|
16756
16755
|
}
|
|
16757
16756
|
return Number(value);
|
|
16758
16757
|
}
|
|
@@ -16799,9 +16798,9 @@ var getCcwDipCoords = (pinCount, pn, w, p) => {
|
|
|
16799
16798
|
const gs = p;
|
|
16800
16799
|
const h = gs * leftPinGaps;
|
|
16801
16800
|
if (isLeft) {
|
|
16802
|
-
return { x: -w / 2
|
|
16801
|
+
return { x: -w / 2, y: h / 2 - (pn - 1) * gs };
|
|
16803
16802
|
}
|
|
16804
|
-
return { x: w / 2
|
|
16803
|
+
return { x: w / 2, y: -h / 2 + (pn - ph - 1) * gs };
|
|
16805
16804
|
};
|
|
16806
16805
|
var dip = (raw_params) => {
|
|
16807
16806
|
const parameters = dip_def.parse(raw_params);
|
|
@@ -16817,7 +16816,9 @@ var dip = (raw_params) => {
|
|
|
16817
16816
|
platedhole(i + 1, x, y, parameters.id ?? "0.8mm", parameters.od ?? "1mm")
|
|
16818
16817
|
);
|
|
16819
16818
|
}
|
|
16820
|
-
const
|
|
16819
|
+
const padEdgeHeight = (parameters.num_pins / 2 - 1) * parameters.p + parameters.od;
|
|
16820
|
+
const innerGap = parameters.w - parameters.od;
|
|
16821
|
+
const sw = innerGap - 1;
|
|
16821
16822
|
const sh = (parameters.num_pins / 2 - 1) * parameters.p + parameters.od + 0.4;
|
|
16822
16823
|
const silkscreenBorder = {
|
|
16823
16824
|
layer: "top",
|
|
@@ -16826,7 +16827,7 @@ var dip = (raw_params) => {
|
|
|
16826
16827
|
route: [
|
|
16827
16828
|
{ x: -sw / 2, y: -sh / 2 },
|
|
16828
16829
|
{ x: -sw / 2, y: sh / 2 },
|
|
16829
|
-
//
|
|
16830
|
+
// U-notch curve outside the pads
|
|
16830
16831
|
...u_curve.map(({ x, y }) => ({
|
|
16831
16832
|
x: x * sw / 6,
|
|
16832
16833
|
y: y * sw / 6 + sh / 2
|
|
@@ -16841,24 +16842,26 @@ var dip = (raw_params) => {
|
|
|
16841
16842
|
const silkscreenPins = [];
|
|
16842
16843
|
for (let i = 0; i < parameters.num_pins; i++) {
|
|
16843
16844
|
const isLeft = i < parameters.num_pins / 2;
|
|
16844
|
-
const
|
|
16845
|
-
const
|
|
16846
|
-
|
|
16845
|
+
const clearance = 0.6;
|
|
16846
|
+
const { y: pinCenterY } = getCcwDipCoords(
|
|
16847
|
+
parameters.num_pins,
|
|
16848
|
+
i + 1,
|
|
16849
|
+
parameters.w,
|
|
16850
|
+
parameters.p ?? 2.54
|
|
16851
|
+
);
|
|
16852
|
+
const pinLabelX = isLeft ? -parameters.w / 2 - parameters.od / 2 - clearance : parameters.w / 2 + parameters.od / 2 + clearance;
|
|
16853
|
+
const pinLabelY = pinCenterY;
|
|
16854
|
+
silkscreenPins.push({
|
|
16847
16855
|
type: "pcb_fabrication_note_text",
|
|
16856
|
+
pcb_fabrication_note_text_id: `pin_${i + 1}`,
|
|
16848
16857
|
layer: "top",
|
|
16849
16858
|
pcb_component_id: `pin_${i + 1}`,
|
|
16850
|
-
pcb_silkscreen_text_id: `pin_${i + 1}`,
|
|
16851
16859
|
text: `{pin${i + 1}}`,
|
|
16852
|
-
anchor_position: {
|
|
16853
|
-
x: pinLabelX,
|
|
16854
|
-
y: pinLabelY
|
|
16855
|
-
},
|
|
16860
|
+
anchor_position: { x: pinLabelX, y: pinLabelY },
|
|
16856
16861
|
font_size: 0.3,
|
|
16857
|
-
font_color: "red",
|
|
16858
16862
|
font: "tscircuit2024",
|
|
16859
|
-
anchor_alignment: "
|
|
16860
|
-
};
|
|
16861
|
-
silkscreenPins.push(silkscreenPin2);
|
|
16863
|
+
anchor_alignment: "top_left"
|
|
16864
|
+
});
|
|
16862
16865
|
}
|
|
16863
16866
|
const silkscreenRefText = silkscreenRef(0, sh / 2 + 0.5, 0.4);
|
|
16864
16867
|
return {
|
|
@@ -16906,11 +16909,11 @@ var footprintSizes = [
|
|
|
16906
16909
|
{
|
|
16907
16910
|
imperial: "1812",
|
|
16908
16911
|
metric: "4532",
|
|
16909
|
-
p_mm_min: 4.
|
|
16910
|
-
pw_mm_min: 1.
|
|
16912
|
+
p_mm_min: 4.275,
|
|
16913
|
+
pw_mm_min: 1.125,
|
|
16911
16914
|
ph_mm_min: 3.4,
|
|
16912
|
-
w_mm_min:
|
|
16913
|
-
h_mm_min:
|
|
16915
|
+
w_mm_min: 5.4,
|
|
16916
|
+
h_mm_min: 3.4
|
|
16914
16917
|
},
|
|
16915
16918
|
{
|
|
16916
16919
|
imperial: "0201",
|
|
@@ -16924,65 +16927,65 @@ var footprintSizes = [
|
|
|
16924
16927
|
{
|
|
16925
16928
|
imperial: "0402",
|
|
16926
16929
|
metric: "1005",
|
|
16927
|
-
p_mm_min: 1,
|
|
16928
|
-
pw_mm_min: 0.
|
|
16929
|
-
ph_mm_min: 0.
|
|
16930
|
-
w_mm_min: 1.
|
|
16931
|
-
h_mm_min: 0.
|
|
16930
|
+
p_mm_min: 1.02,
|
|
16931
|
+
pw_mm_min: 0.54,
|
|
16932
|
+
ph_mm_min: 0.64,
|
|
16933
|
+
w_mm_min: 1.56,
|
|
16934
|
+
h_mm_min: 0.64
|
|
16932
16935
|
},
|
|
16933
16936
|
{
|
|
16934
16937
|
imperial: "0603",
|
|
16935
16938
|
metric: "1608",
|
|
16936
|
-
p_mm_min: 1.
|
|
16937
|
-
pw_mm_min:
|
|
16938
|
-
ph_mm_min:
|
|
16939
|
-
w_mm_min: 2.
|
|
16940
|
-
h_mm_min:
|
|
16939
|
+
p_mm_min: 1.65,
|
|
16940
|
+
pw_mm_min: 0.8,
|
|
16941
|
+
ph_mm_min: 0.95,
|
|
16942
|
+
w_mm_min: 2.45,
|
|
16943
|
+
h_mm_min: 0.95
|
|
16941
16944
|
},
|
|
16942
16945
|
{
|
|
16943
16946
|
imperial: "0805",
|
|
16944
16947
|
metric: "2012",
|
|
16945
|
-
p_mm_min:
|
|
16946
|
-
pw_mm_min:
|
|
16947
|
-
ph_mm_min: 1.
|
|
16948
|
-
w_mm_min:
|
|
16949
|
-
h_mm_min: 1.
|
|
16948
|
+
p_mm_min: 1.825,
|
|
16949
|
+
pw_mm_min: 1.025,
|
|
16950
|
+
ph_mm_min: 1.4,
|
|
16951
|
+
w_mm_min: 2.8499999999999996,
|
|
16952
|
+
h_mm_min: 1.4
|
|
16950
16953
|
},
|
|
16951
16954
|
{
|
|
16952
16955
|
imperial: "1206",
|
|
16953
16956
|
metric: "3216",
|
|
16954
|
-
p_mm_min:
|
|
16955
|
-
pw_mm_min: 1,
|
|
16956
|
-
ph_mm_min: 1.
|
|
16957
|
-
w_mm_min: 4.
|
|
16958
|
-
h_mm_min:
|
|
16957
|
+
p_mm_min: 2.925,
|
|
16958
|
+
pw_mm_min: 1.125,
|
|
16959
|
+
ph_mm_min: 1.75,
|
|
16960
|
+
w_mm_min: 4.05,
|
|
16961
|
+
h_mm_min: 1.75
|
|
16959
16962
|
},
|
|
16960
16963
|
{
|
|
16961
16964
|
imperial: "1210",
|
|
16962
16965
|
metric: "3225",
|
|
16963
|
-
p_mm_min: 2.
|
|
16964
|
-
pw_mm_min: 1.
|
|
16966
|
+
p_mm_min: 2.925,
|
|
16967
|
+
pw_mm_min: 1.125,
|
|
16965
16968
|
ph_mm_min: 2.65,
|
|
16966
|
-
w_mm_min: 4.
|
|
16967
|
-
h_mm_min:
|
|
16969
|
+
w_mm_min: 4.05,
|
|
16970
|
+
h_mm_min: 2.65
|
|
16968
16971
|
},
|
|
16969
16972
|
{
|
|
16970
16973
|
imperial: "2010",
|
|
16971
16974
|
metric: "5025",
|
|
16972
|
-
p_mm_min:
|
|
16973
|
-
pw_mm_min: 1.
|
|
16974
|
-
ph_mm_min:
|
|
16975
|
-
w_mm_min: 5,
|
|
16976
|
-
h_mm_min: 2.
|
|
16975
|
+
p_mm_min: 4.625,
|
|
16976
|
+
pw_mm_min: 1.225,
|
|
16977
|
+
ph_mm_min: 2.65,
|
|
16978
|
+
w_mm_min: 5.85,
|
|
16979
|
+
h_mm_min: 2.65
|
|
16977
16980
|
},
|
|
16978
16981
|
{
|
|
16979
16982
|
imperial: "2512",
|
|
16980
16983
|
metric: "6332",
|
|
16981
|
-
p_mm_min: 5.
|
|
16982
|
-
pw_mm_min: 1.
|
|
16984
|
+
p_mm_min: 5.925,
|
|
16985
|
+
pw_mm_min: 1.225,
|
|
16983
16986
|
ph_mm_min: 3.35,
|
|
16984
|
-
w_mm_min:
|
|
16985
|
-
h_mm_min: 3.
|
|
16987
|
+
w_mm_min: 7.15,
|
|
16988
|
+
h_mm_min: 3.35
|
|
16986
16989
|
}
|
|
16987
16990
|
];
|
|
16988
16991
|
var metricMap = Object.fromEntries(footprintSizes.map((s) => [s.metric, s]));
|
|
@@ -23496,11 +23499,11 @@ var applyOrigin = (elements, origin) => {
|
|
|
23496
23499
|
var string2 = (def) => {
|
|
23497
23500
|
let fp2 = footprinter();
|
|
23498
23501
|
const modifiedDef = def.replace(/^((?:\d{4}|\d{5}))(?=$|_)/, "res$1");
|
|
23499
|
-
const def_parts = modifiedDef.split(
|
|
23502
|
+
const def_parts = modifiedDef.split(/_(?!metric)/).map((s) => {
|
|
23500
23503
|
const m = s.match(/([a-z]+)([\(\d\.\+\?].*)?/);
|
|
23501
23504
|
const [_, fn, v] = m ?? [];
|
|
23502
23505
|
if (v?.includes("?")) return null;
|
|
23503
|
-
return { fn, v
|
|
23506
|
+
return { fn, v };
|
|
23504
23507
|
}).filter(isNotNull);
|
|
23505
23508
|
for (const { fn, v } of def_parts) {
|
|
23506
23509
|
fp2 = fp2[fn](v);
|
|
@@ -23564,7 +23567,11 @@ var footprinter = () => {
|
|
|
23564
23567
|
target.fn = prop;
|
|
23565
23568
|
if (prop === "res" || prop === "cap") {
|
|
23566
23569
|
if (v) {
|
|
23567
|
-
|
|
23570
|
+
if (typeof v === "string" && v.includes("_metric")) {
|
|
23571
|
+
target.metric = v.split("_metric")[0];
|
|
23572
|
+
} else {
|
|
23573
|
+
target.imperial = v;
|
|
23574
|
+
}
|
|
23568
23575
|
}
|
|
23569
23576
|
} else {
|
|
23570
23577
|
target.num_pins = Number.isNaN(Number.parseFloat(v)) ? void 0 : Number.parseFloat(v);
|
|
@@ -25337,7 +25344,7 @@ import * as THREE9 from "three";
|
|
|
25337
25344
|
// package.json
|
|
25338
25345
|
var package_default = {
|
|
25339
25346
|
name: "@tscircuit/3d-viewer",
|
|
25340
|
-
version: "0.0.
|
|
25347
|
+
version: "0.0.332",
|
|
25341
25348
|
main: "./dist/index.js",
|
|
25342
25349
|
module: "./dist/index.js",
|
|
25343
25350
|
type: "module",
|
|
@@ -25385,8 +25392,8 @@ var package_default = {
|
|
|
25385
25392
|
"@jscad/modeling": "^2.12.5",
|
|
25386
25393
|
"@storybook/blocks": "9.0.0-alpha.17",
|
|
25387
25394
|
"@storybook/react-vite": "^9.1.2",
|
|
25388
|
-
"@tscircuit/circuit-json-util": "^0.0.
|
|
25389
|
-
"@tscircuit/core": "^0.0.
|
|
25395
|
+
"@tscircuit/circuit-json-util": "^0.0.65",
|
|
25396
|
+
"@tscircuit/core": "^0.0.629",
|
|
25390
25397
|
"@tscircuit/props": "^0.0.285",
|
|
25391
25398
|
"@types/jsdom": "^21.1.7",
|
|
25392
25399
|
"@types/react": "19",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tscircuit/3d-viewer",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.333",
|
|
4
4
|
"main": "./dist/index.js",
|
|
5
5
|
"module": "./dist/index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -48,8 +48,8 @@
|
|
|
48
48
|
"@jscad/modeling": "^2.12.5",
|
|
49
49
|
"@storybook/blocks": "9.0.0-alpha.17",
|
|
50
50
|
"@storybook/react-vite": "^9.1.2",
|
|
51
|
-
"@tscircuit/circuit-json-util": "^0.0.
|
|
52
|
-
"@tscircuit/core": "^0.0.
|
|
51
|
+
"@tscircuit/circuit-json-util": "^0.0.65",
|
|
52
|
+
"@tscircuit/core": "^0.0.629",
|
|
53
53
|
"@tscircuit/props": "^0.0.285",
|
|
54
54
|
"@types/jsdom": "^21.1.7",
|
|
55
55
|
"@types/react": "19",
|