Comments (8)
I just looked a more closely at the Bus Pirate outline you linked to in mcous/svgerber#20, and it has bigger problems than the small gaps (which it also has). The outline isn't one line; it's several lines drawn over each other in the same place. Dealing with this would be complicated™ (checking for duplicate segments might work), but this is certainly a poorly drawn design / Gerber file. At what point do we stop trying to accommodate for mistakes?
pcb-stackup tries to be more lenient than svgerber, so it will allow any path in the outline that seems manifold to be used as a mask (svgerber needs every path in the outline to be manifold). Unfortunately, because the path goes back over itself with the bus pirate, it appears manifold even though it is messed up, which is why svgerber gives up on the mask but pcb-stackup does not.
I don't think this is a good case for adding gap fixing, but it is a good case for adding an option to force the board outline to be added as a drawing rather than a mask.
from tracespace.
Minor progress!
from tracespace.
Ha, love it! Wouldn't be happy if I got that back from a fab :)
from tracespace.
Implemented gap-filling and duplicate segment detection, got this:
Trying to release all this tonight!
from tracespace.
Wowza! Good work! Looks great!
from tracespace.
Implemented in v0.1.0 by using the plotAsOutline
option in [email protected] / gerber-plotter
from tracespace.
I can't get the same result over on kasbah/pcb-stackup-builder (see top.svg).
What am I doing wrong?
from tracespace.
Looks like my example in the README doesn't use the outline as a mask by default. When you call pcbStackup
, do this:
var stackupOptions = {id: 'my-board', maskWithOutline: true}
var stackup = pcbStackup(layers.filter(Boolean), stackupOptions)
The example in the examples directory shows the use of this option.
Also the drill file needs to be manually set to leading zero suppression (aka keep trailing zeros).
from tracespace.
Related Issues (20)
- Provide ESM build HOT 4
- Provide easier way to get shareable to URL from tracespace viewer's uploaded gerber HOT 1
- Board size calculation error HOT 3
- How do I align the layers? HOT 1
- Incorrectly displaying triangle shape top and bottom SVG HOT 2
- top side outline clippath incorrect HOT 1
- Support rendering Allegro drill files with lots of missing information HOT 10
- About Use Three.js load 3d components
- Allow soldermask layer to cover vias in board render HOT 3
- Outline SVG is coming blank for a particular Gerber file and that is distorting the top and bottom view HOT 2
- Does whats-that-gerber parses and identifies whether slots or cutouts exist in a drill file?? HOT 9
- outline layer is not rendered correctly. HOT 2
- drill layer is not rendered correctly disturbed by origin HOT 2
- Incorrectly Rendered Board Outline HOT 1
- clipPath is not rendered correctly and set gap fill limit HOT 1
- Error: File type not recognized in v5 HOT 2
- About Allegro CAD drill's places HOT 2
- Error: NetworkError when attempting to fetch resource. HOT 2
- filled copper area traces are missing HOT 2
- drill layer not rendered correctly in v4 and v5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tracespace.