[JAVA] Développer le traitement avec IntelliJ + Kotlin + Gradle

L'éditeur de traitement est difficile à utiliser, le type Java est légèrement désagréable, Quoi qu'il en soit, je veux écrire en Kotlin et le gérer dans Gradle.

Installez Java 8

Parce que le traitement ne fonctionne pas s'il s'agit de Java 9 ou supérieur https://github.com/processing/processing/wiki/Supported-Platforms#user-content-java-versions

$ 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

Créer un nouveau projet

Sélectionnez Gradle et vérifiez Java et Kotlin.

Pour Project SDK, spécifiez le 1.8 que vous venez d'installer.

Le reste est sur la route

Traitement ajouté à Gradle

build.gradle


dependencies {
    compile group: 'org.processing', name: 'core', version: '3.3.7'
}

Ouvrez build.gradle Ajoutez le "traitement" dans les "dépendances".

Ensuite, le téléchargement commencera. Lorsque le téléchargement est terminé, il est OK si ʻorg.processing: core est ajouté à ʻExternal Libraries.

Créer un programme

Créez un nouveau fichier Kotlin dans src / main / kotlin.

Le nom du fichier est «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()

C'est un état super simple qui décrit uniquement la partie nécessaire à l'exécution du traitement.

Essayez de courir

Exécutez Run MainKt à partir du triangle qui apparaît à côté de fun main ().

Une fois exécuté,

Une application de traitement vide a été exécutée.

Essayez de mettre en œuvre avec Kotlin

Essayons ** Suivre 3 ** dans les exemples de la formule Traitement et implémentons-le dans Kotlin. https://processing.org/examples/follow3.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()

Quand tu fais ça

Vous pouvez voir que le traitement fonctionne correctement.

Ajouter une bibliothèque

Si vous écrivez en 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'
}

J'ai ajouté clojars.org aux dépôts car mavenCentral n'avait pas ʻoscp5 et controlp5`.

fin

Vous pouvez vous battre avec ça.

Recommended Posts

Développer le traitement avec IntelliJ + Kotlin + Gradle
(IntelliJ + gradle) Hello World avec Spring Boot
Noël avec traitement
Utiliser ProGuard avec Gradle
Test d'intégration avec Gradle
Comment créer un environnement Docker avec Gradle pour IntelliJ
Installez Gradle sur ubuntu16.04
Data Nucleus commençant par Gradle
Débogage à distance avec intellij
Comment installer Gradle et Kotlin avec SDKMAN (Mac)
Utiliser les WebJars avec Gradle
Commencez avec Gradle
Utilisez jlink avec gradle
Créer un multi-projet Java avec Gradle
Premiers pas avec le traitement Doma-Annotation
Pot Gradle + Kotlin-Generate avec DSL
Traitement d'écriture dans IntelliJ IDEA
Développer des programmes C avec guard
Spring avec Kotorin --6 Traitement asynchrone
Déploiement à chaud avec IntelliJ IDEA
Lombok ne fonctionne pas avec Gradle5
Diapositive de présentation réalisée avec Processing
Hello World avec SpringBoot / Gradle