campskeleton
campskeleton copied to clipboard
weighted straight skeleton java implementation
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

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.
build
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).
integration
maven
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>
gradle
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'
}
examples
main UI class is org.twak.camp.debug.CampSkeleton.
example headless code.
cite
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} }