Processing을 IntelliJ+Kotlin+Gradle에서 개발
13973 단어 processinggradleIntelliJKotlin자바
어차피라면 Kotlin으로 쓰고 싶고, Gradle로 관리하고 싶지 않아 취지.
Java8 설치
Processing이 Java9 이상이면 움직이지 않기 때문에
htps : // 기주 b. 코 m / p 로세 센 g / p 로세 센 g / ぃき / 쏘 r d P t t rms # 우세 r 콘텐 t ゔ ぁ ゔ ぇ
$ brew cask reinstall caskroom/versions/zulu8
$ /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
10.0.2, x86_64: "Java SE 10.0.2" /Library/Java/JavaVirtualMachines/jdk-10.0.2.jdk/Contents/Home
1.8.0_222-zulu-8.40.0.25, x86_64: "Zulu 8" /Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home
새 프로젝트 만들기
Gradle을 선택하고 Java와 Kotlin을 확인하십시오.
Project SDK
는 미리 설치한 1.8
를 지정해 주세요.나머지는 길
Gradle에 Processing 추가
build.gradle
dependencies {
compile group: 'org.processing', name: 'core', version: '3.3.7'
}
build.gradle
열기dependencies
에 processing
를 추가합니다.그러면 다운로드가 시작됩니다.
다운로드가 완료되면
External Libraries
에 org.processing:core
가 추가되어 있으면 OK입니다.프로그램 만들기
src/main/kotlin
에 새 Kotlin 파일을 만듭니다.파일 이름은
Main.tk
입니다.src/main/kotlin/Main.tk
import processing.core.*
class Main : PApplet () {
fun run() {
return PApplet.main(Main::class.java.simpleName)
}
}
fun main() : Unit = Main().run()
Processing 실행에 필요한 부분만을 기술한 슈퍼 심플한 상태입니다.
실행해보기
fun main()
옆에 나타나는 삼각형에서 Run MainKt
를 실행하십시오.실행되면,
빈 처리 앱이 실행되었습니다.
Kotlin에서 구현해보기
Processing 공식 안에 있는 Examples의 Follow 3을 시도해 Kotlin에서 구현해 보겠습니다.
htps : // p 로세신 g. 오 rg / 에ぁ mp ぇ s / 흠 w3. HTML
src/main/kotlin/Main.tk
import processing.core.*
class Main : PApplet () {
var x = FloatArray(20)
var y = FloatArray(20)
var segLength = 18
override fun settings() {
size(640, 360)
}
override fun setup() {
strokeWeight(9F)
stroke(255F, 100F)
}
override fun draw() {
background(0f)
dragSegment(0, mouseX.toFloat(), mouseY.toFloat())
for (i in 0 until x.size - 1) {
dragSegment(i + 1, x[i], y[i])
}
}
private fun dragSegment(i: Int, xin: Float, yin: Float) {
val dx = xin - x[i]
val dy = yin - y[i]
val angle = PApplet.atan2(dy, dx)
x[i] = xin - PApplet.cos(angle) * segLength
y[i] = yin - PApplet.sin(angle) * segLength
segment(x[i], y[i], angle)
}
private fun segment(x: Float, y: Float, a: Float) {
pushMatrix()
translate(x, y)
rotate(a)
line(0F, 0F, segLength.toFloat(), 0F)
popMatrix()
}
fun run() {
return PApplet.main(Main::class.java.simpleName)
}
}
fun main() : Unit = Main().run()
이렇게 하면
Processing이 안전하게 작동하는지 확인할 수 있습니다.
라이브러리 추가
gradle에 쓰면
build.gradle
repositories {
mavenCentral()
maven { url "https://clojars.org/repo" }
}
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
testCompile group: 'junit', name: 'junit', version: '4.12'
compile group: 'org.processing', name: 'core', version: '3.3.7'
compile group: 'ddf.minim', name: 'ddf.minim', version: '2.2.0'
compile group: 'controlp5', name: 'controlp5', version: '2.2.4'
compile group: 'de.sojamo', name: 'oscp5', version: '0.9.8'
}
mavenCentral 에는
oscp5
와 controlp5
가 없었기 때문에 clojars.org
를 repositories 에 추가했습니다.끝
이것으로 싸울 수 있다.
Reference
이 문제에 관하여(Processing을 IntelliJ+Kotlin+Gradle에서 개발), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/narikei/items/f09cd510bcb2dbb267cb텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)