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}
}