This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
snapping_in_pcb [2018/07/26 15:04] cparker [Discussion] |
snapping_in_pcb [2019/03/21 12:50] (current) cparker [TODO List] |
||
---|---|---|---|
Line 229: | Line 229: | ||
How does it work? | How does it work? | ||
The plugin is loaded and creates it's alternate ''SnapList''. It can populate it from the structures that already exist in crosshair.c, I think, by declaring them as externs. | The plugin is loaded and creates it's alternate ''SnapList''. It can populate it from the structures that already exist in crosshair.c, I think, by declaring them as externs. | ||
+ | |||
+ | I'm currently experimenting with this in the home/cparker/mod_snapping_plugin branch. I have this code built as a plugin, but I also included it in the source tree just in case people had trouble with the plugin. | ||
==Snapping and Layers== | ==Snapping and Layers== | ||
Line 237: | Line 239: | ||
How do I keep track of which layers I'm searching? Do I pass pointers? Layer numbers? | How do I keep track of which layers I'm searching? Do I pass pointers? Layer numbers? | ||
=====TODO List===== | =====TODO List===== | ||
+ | * rebase the code off of the object_list instead of using dedicated list types. | ||
* snap based on screen distance instead of linear distance | * snap based on screen distance instead of linear distance | ||
* don't snap to off-screen objects | * don't snap to off-screen objects | ||
Line 245: | Line 248: | ||
* tests | * tests | ||
+ | =====Current Work In Progress===== | ||
+ | Based on email exchanges and testing by Richard. | ||
+ | |||
+ | The snapping code needs to know about layers. We want to be able to search for things to snap to only on certain layers, and then in a particular order. | ||
===== Related Pages ===== | ===== Related Pages ===== | ||
* [[PCB Crosshair|PCB Crosshair]] | * [[PCB Crosshair|PCB Crosshair]] | ||