@tscircuit/pcb-viewer 1.11.312 → 1.11.313

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 CHANGED
@@ -7842,58 +7842,6 @@ var convertElementToPrimitives = (element, allElements) => {
7842
7842
  _parent_source_component
7843
7843
  });
7844
7844
  }
7845
- case "pcb_copper_pour": {
7846
- const pour = element;
7847
- switch (pour.shape) {
7848
- case "rect": {
7849
- const { center, width, height, layer, rotation } = pour;
7850
- return [
7851
- {
7852
- _pcb_drawing_object_id: getNewPcbDrawingObjectId(
7853
- "pcb_copper_pour_rect"
7854
- ),
7855
- pcb_drawing_type: "rect",
7856
- x: center.x,
7857
- y: center.y,
7858
- w: width,
7859
- h: height,
7860
- layer,
7861
- _element: element,
7862
- ccw_rotation: rotation
7863
- }
7864
- ];
7865
- }
7866
- case "polygon": {
7867
- const { points, layer } = pour;
7868
- return [
7869
- {
7870
- _pcb_drawing_object_id: getNewPcbDrawingObjectId(
7871
- "pcb_copper_pour_polygon"
7872
- ),
7873
- pcb_drawing_type: "polygon",
7874
- points: normalizePolygonPoints(points),
7875
- layer,
7876
- _element: element
7877
- }
7878
- ];
7879
- }
7880
- case "brep": {
7881
- const { brep_shape, layer } = pour;
7882
- return [
7883
- {
7884
- _pcb_drawing_object_id: getNewPcbDrawingObjectId(
7885
- "pcb_copper_pour_brep"
7886
- ),
7887
- pcb_drawing_type: "polygon_with_arcs",
7888
- brep_shape,
7889
- layer,
7890
- _element: element
7891
- }
7892
- ];
7893
- }
7894
- }
7895
- return [];
7896
- }
7897
7845
  }
7898
7846
  return [];
7899
7847
  };
@@ -9352,6 +9300,24 @@ function drawPcbViaElementsForLayer({
9352
9300
  }
9353
9301
  }
9354
9302
 
9303
+ // src/lib/draw-copper-pour.ts
9304
+ import { CircuitToCanvasDrawer as CircuitToCanvasDrawer11 } from "circuit-to-canvas";
9305
+ function isCopperPourElement(element) {
9306
+ return element.type === "pcb_copper_pour";
9307
+ }
9308
+ function drawCopperPourElementsForLayer({
9309
+ canvas,
9310
+ elements,
9311
+ layers,
9312
+ realToCanvasMat
9313
+ }) {
9314
+ const copperPourElements = elements.filter(isCopperPourElement);
9315
+ if (copperPourElements.length === 0) return;
9316
+ const drawer = new CircuitToCanvasDrawer11(canvas);
9317
+ drawer.realToCanvasMat = realToCanvasMat;
9318
+ drawer.drawElements(copperPourElements, { layers });
9319
+ }
9320
+
9355
9321
  // src/components/CanvasPrimitiveRenderer.tsx
9356
9322
  import { jsx as jsx3, jsxs } from "react/jsx-runtime";
9357
9323
  var orderedLayers = [
@@ -9465,6 +9431,22 @@ var CanvasPrimitiveRenderer = ({
9465
9431
  primitives
9466
9432
  });
9467
9433
  }
9434
+ if (topCanvas) {
9435
+ drawCopperPourElementsForLayer({
9436
+ canvas: topCanvas,
9437
+ elements,
9438
+ layers: ["top_copper"],
9439
+ realToCanvasMat: transform
9440
+ });
9441
+ }
9442
+ if (bottomCanvas) {
9443
+ drawCopperPourElementsForLayer({
9444
+ canvas: bottomCanvas,
9445
+ elements,
9446
+ layers: ["bottom_copper"],
9447
+ realToCanvasMat: transform
9448
+ });
9449
+ }
9468
9450
  const topSilkscreenCanvas = canvasRefs.current.top_silkscreen;
9469
9451
  if (topSilkscreenCanvas) {
9470
9452
  drawSilkscreenElementsForLayer(
@@ -13589,7 +13571,7 @@ import { css as css3 } from "@emotion/css";
13589
13571
  // package.json
13590
13572
  var package_default = {
13591
13573
  name: "@tscircuit/pcb-viewer",
13592
- version: "1.11.311",
13574
+ version: "1.11.312",
13593
13575
  main: "dist/index.js",
13594
13576
  type: "module",
13595
13577
  repository: "tscircuit/pcb-viewer",
@@ -13643,7 +13625,7 @@ var package_default = {
13643
13625
  "@tscircuit/math-utils": "^0.0.29",
13644
13626
  "@vitejs/plugin-react": "^5.0.2",
13645
13627
  "circuit-json": "^0.0.354",
13646
- "circuit-to-canvas": "^0.0.47",
13628
+ "circuit-to-canvas": "^0.0.48",
13647
13629
  "circuit-to-svg": "^0.0.271",
13648
13630
  color: "^4.2.3",
13649
13631
  "react-supergrid": "^1.0.10",