weighted straight skeleton implementation in java. video.
allows negative weights for offsetting in either direction. Implementation of Felkel's algo with robustness - described here.
run the jar with:
java -jar campskeleton-0.0.1-SNAPSHOT-jar-with-dependencies.jar
there's a primitive gui interface. Use left mouse button to move points and control-click to add new points.
to build run the command mvn install
to install the dependencies. Then the command mvn package
should build a jar.
use mvn install -P dev
and mvn package -P dev
to use development profile (for custom module dependency to my jutils).
add this to your pom.xml
to use latest snapshot in your project:
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependency>
<groupId>com.github.twak</groupId>
<artifactId>campskeleton</artifactId>
<version>0.0.1</version>
</dependency>
add this in your root build.gradle
at the end of repositories to use latest snapshot:
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
implementation 'com.github.twak:campskeleton:master-SNAPSHOT'
}
main UI class is org.twak.camp.debug.CampSkeleton.
example headless code.
this is a component of a research project - if you use it, please cite us:
@article{kelly2011interactive, title={Interactive architectural modeling with procedural extrusions}, author={Kelly, Tom and Wonka, Peter}, journal={ACM Transactions on Graphics (TOG)}, volume={30}, number={2}, pages={14}, year={2011}, publisher={ACM} }