Grand package change

This commit is contained in:
Alexander Nozik 2021-03-07 16:19:43 +03:00
parent 3f6e39b18d
commit 7febb4452a
180 changed files with 1029 additions and 1006 deletions
build.gradle.kts
demo
gdml
build.gradle.kts
src
commonTest/kotlin/space/kscience/visionforge/gdml
jsMain/kotlin/space/kscience/visionforge/gdml/demo
jvmMain/kotlin/space/kscience/visionforge/gdml/demo
jvmTest/kotlin/space/kscience/visionforge/solid
jupyter-playground
build.gradle.kts
src/main/kotlin/hep/dataforge/playground
muon-monitor/src
commonMain/kotlin/ru/mipt/npm/muon/monitor
jsMain/kotlin/ru/mipt/npm/muon/monitor
jvmMain/kotlin/ru/mipt/npm/muon/monitor
playground/src
sat-demo/src/main/kotlin/ru/mipt/npm/sat
solid-showcase
build.gradle.kts
src
commonMain/kotlin/space/kscience/visionforge/solid/demo
jsMain/kotlin/space/kscience/visionforge/solid/demo
jvmMain/kotlin/space/kscience/visionforge/solid/demo
settings.gradle.kts
ui
bootstrap/src/main/kotlin/space/kscience/visionforge/bootstrap
material/src/main/kotlin/hep/dataforge/vision/material
react/src/main/kotlin/space/kscience/visionforge/react
visionforge-core
visionforge-fx/src/main/kotlin/space/kscience/visionforge

@ -4,7 +4,7 @@ plugins {
kotlin("jupyter.api") apply false
}
val dataforgeVersion by extra("0.3.0")
val dataforgeVersion by extra("0.4.0-dev-2")
val ktorVersion by extra(ru.mipt.npm.gradle.KScienceVersions.ktorVersion)
val htmlVersion by extra(ru.mipt.npm.gradle.KScienceVersions.htmlVersion)
val kotlinWrappersVersion by extra("pre.148-kotlin-1.4.30")
@ -22,7 +22,7 @@ allprojects {
}
group = "hep.dataforge"
version = "0.2.0-dev-6"
version = "0.2.0-dev-7"
}
val githubProject by extra("visionforge")
@ -30,10 +30,16 @@ val bintrayRepo by extra("dataforge")
subprojects {
if (name.startsWith("visionforge")) {
plugins.apply("ru.mipt.npm.gradle.publish")
plugins.apply("maven-publish")
}
}
ksciencePublish{
github("visionforge")
space()
sonatype()
}
apiValidation {
validationDisabled = true
ignoredPackages.add("info.laht.threekt")

@ -39,11 +39,11 @@ kotlin {
}
application {
mainClass.set("hep.dataforge.vision.gdml.demo.GdmlFxDemoAppKt")
mainClass.set("space.kscience.visionforge.gdml.demo.GdmlFxDemoAppKt")
}
val convertGdmlToJson by tasks.creating(JavaExec::class) {
group = "application"
classpath = sourceSets["main"].runtimeClasspath
main = "hep.dataforge.vis.spatial.gdml.demo.SaveToJsonKt"
main = "space.kscience.dataforge.vis.spatial.gdml.demo.SaveToJsonKt"
}

@ -1,11 +1,11 @@
package hep.dataforge.vision.gdml
package space.kscience.visionforge.gdml
import hep.dataforge.meta.string
import hep.dataforge.names.toName
import hep.dataforge.values.asValue
import hep.dataforge.vision.gdml.GdmlShowcase.cubes
import hep.dataforge.vision.setProperty
import hep.dataforge.vision.solid.SolidMaterial
import space.kscience.dataforge.meta.string
import space.kscience.dataforge.names.toName
import space.kscience.dataforge.values.asValue
import space.kscience.visionforge.gdml.GdmlShowcase.cubes
import space.kscience.visionforge.setProperty
import space.kscience.visionforge.solid.SolidMaterial
import kotlin.test.Test
import kotlin.test.assertEquals
import kotlin.test.assertTrue

@ -1,18 +1,5 @@
package hep.dataforge.vision.gdml.demo
package space.kscience.visionforge.gdml.demo
import hep.dataforge.context.Context
import hep.dataforge.names.Name
import hep.dataforge.vision.Vision
import hep.dataforge.vision.bootstrap.gridRow
import hep.dataforge.vision.bootstrap.nameCrumbs
import hep.dataforge.vision.bootstrap.threeControls
import hep.dataforge.vision.gdml.toVision
import hep.dataforge.vision.react.ThreeCanvasComponent
import hep.dataforge.vision.react.flexColumn
import hep.dataforge.vision.solid.Solid
import hep.dataforge.vision.solid.Solids
import hep.dataforge.vision.solid.specifications.Canvas3DOptions
import hep.dataforge.vision.solid.three.ThreeCanvas
import kotlinx.browser.window
import kotlinx.css.*
import org.w3c.files.FileReader
@ -22,8 +9,21 @@ import react.child
import react.dom.h1
import react.functionalComponent
import react.useState
import space.kscience.dataforge.context.Context
import space.kscience.dataforge.names.Name
import space.kscience.gdml.Gdml
import space.kscience.gdml.decodeFromString
import space.kscience.visionforge.Vision
import space.kscience.visionforge.bootstrap.gridRow
import space.kscience.visionforge.bootstrap.nameCrumbs
import space.kscience.visionforge.bootstrap.threeControls
import space.kscience.visionforge.gdml.toVision
import space.kscience.visionforge.react.ThreeCanvasComponent
import space.kscience.visionforge.react.flexColumn
import space.kscience.visionforge.solid.Solid
import space.kscience.visionforge.solid.Solids
import space.kscience.visionforge.solid.specifications.Canvas3DOptions
import space.kscience.visionforge.solid.three.ThreeCanvas
import styled.css
import styled.styledDiv

@ -1,15 +1,15 @@
package hep.dataforge.vision.gdml.demo
package space.kscience.visionforge.gdml.demo
import hep.dataforge.context.Global
import hep.dataforge.vision.Application
import hep.dataforge.vision.bootstrap.useBootstrap
import hep.dataforge.vision.gdml.GdmlShowcase
import hep.dataforge.vision.gdml.toVision
import hep.dataforge.vision.solid.three.ThreePlugin
import hep.dataforge.vision.startApplication
import kotlinx.browser.document
import react.child
import react.dom.render
import space.kscience.dataforge.context.Global
import space.kscience.visionforge.Application
import space.kscience.visionforge.bootstrap.useBootstrap
import space.kscience.visionforge.gdml.GdmlShowcase
import space.kscience.visionforge.gdml.toVision
import space.kscience.visionforge.solid.three.ThreePlugin
import space.kscience.visionforge.startApplication
private class GDMLDemoApp : Application {

@ -1,4 +1,4 @@
package hep.dataforge.vision.gdml.demo
package space.kscience.visionforge.gdml.demo
import drop.FileDrop
import kotlinx.css.*

@ -1,19 +1,19 @@
package hep.dataforge.vision.gdml.demo
package space.kscience.visionforge.gdml.demo
import hep.dataforge.context.Global
import hep.dataforge.vision.VisionManager
import hep.dataforge.vision.describedProperties
import hep.dataforge.vision.editor.VisualObjectEditorFragment
import hep.dataforge.vision.editor.VisualObjectTreeFragment
import hep.dataforge.vision.gdml.GdmlShowcase.cubes
import hep.dataforge.vision.gdml.toVision
import hep.dataforge.vision.solid.FX3DPlugin
import hep.dataforge.vision.solid.FXCanvas3D
import hep.dataforge.vision.solid.Solid
import hep.dataforge.vision.solid.SolidMaterial
import javafx.geometry.Orientation
import javafx.scene.Parent
import javafx.stage.FileChooser
import space.kscience.dataforge.context.Global
import space.kscience.visionforge.VisionManager
import space.kscience.visionforge.describedProperties
import space.kscience.visionforge.editor.VisualObjectEditorFragment
import space.kscience.visionforge.editor.VisualObjectTreeFragment
import space.kscience.visionforge.gdml.GdmlShowcase.cubes
import space.kscience.visionforge.gdml.toVision
import space.kscience.visionforge.solid.FX3DPlugin
import space.kscience.visionforge.solid.FXCanvas3D
import space.kscience.visionforge.solid.Solid
import space.kscience.visionforge.solid.SolidMaterial
import tornadofx.*
class GDMLDemoApp : App(GDMLView::class)

@ -1,11 +1,11 @@
package hep.dataforge.vision.gdml.demo
package space.kscience.visionforge.gdml.demo
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.Vision
import hep.dataforge.vision.VisionManager
import hep.dataforge.vision.gdml.toVision
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.gdml.Gdml
import space.kscience.gdml.decodeFromFile
import space.kscience.visionforge.Vision
import space.kscience.visionforge.VisionManager
import space.kscience.visionforge.gdml.toVision
import java.io.File
import java.util.zip.GZIPInputStream
import java.util.zip.ZipInputStream

@ -1,10 +1,10 @@
package hep.dataforge.vision.gdml.demo
package space.kscience.visionforge.gdml.demo
import hep.dataforge.vision.gdml.toVision
import hep.dataforge.vision.solid.Solids
import space.kscience.gdml.Gdml
import space.kscience.gdml.LUnit
import space.kscience.gdml.decodeFromFile
import space.kscience.visionforge.gdml.toVision
import space.kscience.visionforge.solid.Solids
import java.io.File
import java.nio.file.Paths

@ -1,7 +1,7 @@
package hep.dataforge.vision.solid
package space.kscience.visionforge.solid
import hep.dataforge.names.asName
import org.junit.jupiter.api.Test
import space.kscience.dataforge.names.asName
import kotlin.test.Ignore
class FileSerializationTest {

@ -32,7 +32,7 @@ tasks.withType<Test> {
}
tasks.processJupyterApiResources {
libraryProducers = listOf("hep.dataforge.playground.VisionForgePlayGroundForJupyter")
libraryProducers = listOf("space.kscience.dataforge.playground.VisionForgePlayGroundForJupyter")
}
tasks.findByName("shadowJar")?.dependsOn("processJupyterApiResources")

@ -1,28 +1,28 @@
package hep.dataforge.playground
package space.kscience.dataforge.playground
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.Vision
import hep.dataforge.vision.VisionForge
import hep.dataforge.vision.gdml.toVision
import hep.dataforge.vision.html.HtmlVisionFragment
import hep.dataforge.vision.html.Page
import hep.dataforge.vision.html.embedVisionFragment
import hep.dataforge.vision.html.fragment
import hep.dataforge.vision.plotly.toVision
import hep.dataforge.vision.plotly.usePlotly
import hep.dataforge.vision.plugins
import hep.dataforge.vision.solid.Solids
import hep.dataforge.vision.visionManager
import kotlinx.html.div
import kotlinx.html.id
import kotlinx.html.script
import kotlinx.html.stream.createHTML
import kotlinx.html.unsafe
import kscience.plotly.Plot
import org.jetbrains.kotlinx.jupyter.api.HTML
import org.jetbrains.kotlinx.jupyter.api.annotations.JupyterLibrary
import org.jetbrains.kotlinx.jupyter.api.libraries.*
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.gdml.Gdml
import space.kscience.plotly.Plot
import space.kscience.visionforge.Vision
import space.kscience.visionforge.VisionForge
import space.kscience.visionforge.gdml.toVision
import space.kscience.visionforge.html.HtmlVisionFragment
import space.kscience.visionforge.html.Page
import space.kscience.visionforge.html.embedVisionFragment
import space.kscience.visionforge.html.fragment
import space.kscience.visionforge.plotly.toVision
import space.kscience.visionforge.plotly.usePlotly
import space.kscience.visionforge.plugins
import space.kscience.visionforge.solid.Solids
import space.kscience.visionforge.visionManager
@JupyterLibrary
@DFExperimental
@ -57,12 +57,12 @@ internal class VisionForgePlayGroundForJupyter : JupyterIntegration() {
import(
"space.kscience.gdml.*",
"kscience.plotly.*",
"kscience.plotly.models.*",
"space.kscience.plotly.*",
"space.kscience.plotly.models.*",
"kotlinx.html.*",
"hep.dataforge.vision.solid.*",
"hep.dataforge.vision.html.Page",
"hep.dataforge.vision.html.page"
"space.kscience.visionforge.solid.*",
"space.kscience.visionforge.html.Page",
"space.kscience.visionforge.html.page"
)
import<VisionForge>()
@ -90,7 +90,7 @@ internal class VisionForgePlayGroundForJupyter : JupyterIntegration() {
HTML(produceHtmlVisionString(fragment))
}
render<kscience.plotly.HtmlFragment> { fragment ->
render<space.kscience.plotly.PlotlyHtmlFragment> { fragment ->
HTML(createHTML().apply(fragment.visit).finalize())
}

@ -1,7 +1,7 @@
package ru.mipt.npm.muon.monitor
import hep.dataforge.vision.solid.Point3D
import kotlinx.serialization.Serializable
import space.kscience.visionforge.solid.Point3D
typealias Track = List<Point3D>

@ -1,10 +1,10 @@
package ru.mipt.npm.muon.monitor
import hep.dataforge.vision.removeAll
import hep.dataforge.vision.solid.*
import ru.mipt.npm.muon.monitor.Monitor.CENTRAL_LAYER_Z
import ru.mipt.npm.muon.monitor.Monitor.LOWER_LAYER_Z
import ru.mipt.npm.muon.monitor.Monitor.UPPER_LAYER_Z
import space.kscience.visionforge.removeAll
import space.kscience.visionforge.solid.*
import kotlin.math.PI
class Model {

@ -1,9 +1,9 @@
package ru.mipt.npm.muon.monitor
import hep.dataforge.vision.solid.Point3D
import hep.dataforge.vision.solid.plus
import ru.mipt.npm.muon.monitor.Monitor.PIXEL_XY_SIZE
import ru.mipt.npm.muon.monitor.Monitor.PIXEL_Z_SIZE
import space.kscience.visionforge.solid.Point3D
import space.kscience.visionforge.solid.plus
/**
* A single pixel

@ -1,21 +1,5 @@
package ru.mipt.npm.muon.monitor
import hep.dataforge.context.Context
import hep.dataforge.names.Name
import hep.dataforge.names.NameToken
import hep.dataforge.names.isEmpty
import hep.dataforge.names.length
import hep.dataforge.vision.Vision
import hep.dataforge.vision.bootstrap.canvasControls
import hep.dataforge.vision.bootstrap.card
import hep.dataforge.vision.bootstrap.gridRow
import hep.dataforge.vision.bootstrap.visionPropertyEditor
import hep.dataforge.vision.react.ThreeCanvasComponent
import hep.dataforge.vision.react.flexColumn
import hep.dataforge.vision.react.objectTree
import hep.dataforge.vision.solid.specifications.Camera
import hep.dataforge.vision.solid.specifications.Canvas3DOptions
import hep.dataforge.vision.solid.three.ThreeCanvas
import io.ktor.client.HttpClient
import io.ktor.client.request.get
import kotlinx.coroutines.GlobalScope
@ -27,6 +11,22 @@ import react.child
import react.dom.*
import react.functionalComponent
import react.useState
import space.kscience.dataforge.context.Context
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.NameToken
import space.kscience.dataforge.names.isEmpty
import space.kscience.dataforge.names.length
import space.kscience.visionforge.Vision
import space.kscience.visionforge.bootstrap.canvasControls
import space.kscience.visionforge.bootstrap.card
import space.kscience.visionforge.bootstrap.gridRow
import space.kscience.visionforge.bootstrap.visionPropertyEditor
import space.kscience.visionforge.react.ThreeCanvasComponent
import space.kscience.visionforge.react.flexColumn
import space.kscience.visionforge.react.objectTree
import space.kscience.visionforge.solid.specifications.Camera
import space.kscience.visionforge.solid.specifications.Canvas3DOptions
import space.kscience.visionforge.solid.three.ThreeCanvas
import styled.css
import styled.styledDiv
import kotlin.math.PI
@ -154,7 +154,7 @@ val MMApp = functionalComponent<MMAppProps>("Muon monitor") { props ->
+"World"
attrs {
onClickFunction = {
selected = hep.dataforge.names.Name.EMPTY
selected = space.kscience.dataforge.names.Name.EMPTY
}
}
}

@ -1,15 +1,15 @@
package ru.mipt.npm.muon.monitor
import hep.dataforge.context.Global
import hep.dataforge.vision.Application
import hep.dataforge.vision.bootstrap.useBootstrap
import hep.dataforge.vision.startApplication
import io.ktor.client.HttpClient
import io.ktor.client.features.json.JsonFeature
import io.ktor.client.features.json.serializer.KotlinxSerializer
import kotlinx.browser.document
import react.child
import react.dom.render
import space.kscience.dataforge.context.Global
import space.kscience.visionforge.Application
import space.kscience.visionforge.bootstrap.useBootstrap
import space.kscience.visionforge.startApplication
private class MMDemoApp : Application {

@ -1,10 +1,10 @@
package ru.mipt.npm.muon.monitor.server
import hep.dataforge.context.Context
import hep.dataforge.context.Global
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.solid.Solids
import space.kscience.dataforge.context.Context
import space.kscience.dataforge.context.Global
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.visionforge.solid.Solids
import io.ktor.application.Application
import io.ktor.application.call
import io.ktor.application.install

@ -1,6 +1,6 @@
package ru.mipt.npm.muon.monitor.sim
import hep.dataforge.vision.solid.Point3D
import space.kscience.visionforge.solid.Point3D
import org.apache.commons.math3.geometry.euclidean.threed.Line
import org.apache.commons.math3.geometry.euclidean.threed.Plane
import org.apache.commons.math3.geometry.euclidean.threed.Vector3D

@ -1,8 +1,8 @@
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.VisionForge
import hep.dataforge.vision.plotly.usePlotly
import hep.dataforge.vision.solid.three.useThreeJs
import kotlinx.browser.window
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.visionforge.VisionForge
import space.kscience.visionforge.plotly.usePlotly
import space.kscience.visionforge.solid.three.useThreeJs
@DFExperimental
fun main(): Unit = VisionForge.run{

@ -1,13 +1,13 @@
package hep.dataforge.vision.examples
package space.kscience.visionforge.examples
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.VisionForge
import hep.dataforge.vision.gdml.GdmlShowcase.cubes
import hep.dataforge.vision.gdml.toVision
import hep.dataforge.vision.html.ResourceLocation
import hep.dataforge.vision.html.fragment
import hep.dataforge.vision.invoke
import hep.dataforge.vision.solid.Solids
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.visionforge.VisionForge
import space.kscience.visionforge.gdml.GdmlShowcase.cubes
import space.kscience.visionforge.gdml.toVision
import space.kscience.visionforge.html.ResourceLocation
import space.kscience.visionforge.html.fragment
import space.kscience.visionforge.invoke
import space.kscience.visionforge.solid.Solids
@DFExperimental
fun main() = VisionForge(Solids) {

@ -1,15 +1,15 @@
package hep.dataforge.vision.examples
package space.kscience.visionforge.examples
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.VisionForge
import hep.dataforge.vision.gdml.toVision
import hep.dataforge.vision.html.ResourceLocation
import hep.dataforge.vision.html.fragment
import hep.dataforge.vision.invoke
import hep.dataforge.vision.solid.Solids
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.gdml.Gdml
import space.kscience.gdml.LUnit
import space.kscience.gdml.decodeFromStream
import space.kscience.visionforge.VisionForge
import space.kscience.visionforge.gdml.toVision
import space.kscience.visionforge.html.ResourceLocation
import space.kscience.visionforge.html.fragment
import space.kscience.visionforge.invoke
import space.kscience.visionforge.solid.Solids
@DFExperimental
fun main() = VisionForge(Solids) {

@ -1,10 +1,10 @@
package hep.dataforge.vision.examples
package space.kscience.visionforge.examples
import com.github.ricky12awesome.jss.encodeToSchema
import hep.dataforge.vision.solid.SolidGroup
import hep.dataforge.vision.solid.Solids
import kotlinx.serialization.ExperimentalSerializationApi
import kotlinx.serialization.json.Json
import space.kscience.visionforge.solid.SolidGroup
import space.kscience.visionforge.solid.Solids
@ExperimentalSerializationApi
fun main() {

@ -1,13 +1,13 @@
package hep.dataforge.vision.examples
package space.kscience.visionforge.examples
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.VisionForge
import hep.dataforge.vision.html.ResourceLocation
import hep.dataforge.vision.html.fragment
import hep.dataforge.vision.invoke
import hep.dataforge.vision.plotly.PlotlyPlugin
import hep.dataforge.vision.plotly.plotly
import kscience.plotly.scatter
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.plotly.scatter
import space.kscience.visionforge.VisionForge
import space.kscience.visionforge.html.ResourceLocation
import space.kscience.visionforge.html.fragment
import space.kscience.visionforge.invoke
import space.kscience.visionforge.plotly.PlotlyPlugin
import space.kscience.visionforge.plotly.plotly
@DFExperimental
fun main() = VisionForge(PlotlyPlugin) {

@ -1,12 +1,12 @@
package hep.dataforge.vision.examples
package space.kscience.visionforge.examples
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.VisionForge
import hep.dataforge.vision.html.ResourceLocation
import hep.dataforge.vision.html.fragment
import hep.dataforge.vision.invoke
import hep.dataforge.vision.solid.*
import kotlinx.html.h1
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.visionforge.VisionForge
import space.kscience.visionforge.html.ResourceLocation
import space.kscience.visionforge.html.fragment
import space.kscience.visionforge.invoke
import space.kscience.visionforge.solid.*
import java.nio.file.Paths
import kotlin.random.Random

@ -1,15 +1,15 @@
package hep.dataforge.vision.examples
package space.kscience.visionforge.examples
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.Vision
import hep.dataforge.vision.VisionForge
import hep.dataforge.vision.html.HtmlVisionFragment
import hep.dataforge.vision.html.ResourceLocation
import hep.dataforge.vision.html.page
import hep.dataforge.vision.html.scriptHeader
import hep.dataforge.vision.makeFile
import hep.dataforge.vision.three.server.VisionServer
import hep.dataforge.vision.three.server.useScript
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.visionforge.Vision
import space.kscience.visionforge.VisionForge
import space.kscience.visionforge.html.HtmlVisionFragment
import space.kscience.visionforge.html.ResourceLocation
import space.kscience.visionforge.html.page
import space.kscience.visionforge.html.scriptHeader
import space.kscience.visionforge.makeFile
import space.kscience.visionforge.three.server.VisionServer
import space.kscience.visionforge.three.server.useScript
import java.awt.Desktop
import java.nio.file.Path

@ -1,13 +1,13 @@
package hep.dataforge.vision.examples
package space.kscience.visionforge.examples
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.VisionForge
import hep.dataforge.vision.html.ResourceLocation
import hep.dataforge.vision.html.fragment
import hep.dataforge.vision.invoke
import hep.dataforge.vision.solid.Solids
import hep.dataforge.vision.solid.box
import hep.dataforge.vision.solid.solid
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.visionforge.VisionForge
import space.kscience.visionforge.html.ResourceLocation
import space.kscience.visionforge.html.fragment
import space.kscience.visionforge.invoke
import space.kscience.visionforge.solid.Solids
import space.kscience.visionforge.solid.box
import space.kscience.visionforge.solid.solid
@DFExperimental
fun main() = VisionForge(Solids) {

@ -1,10 +1,10 @@
package ru.mipt.npm.sat
import hep.dataforge.meta.set
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.solid.*
import hep.dataforge.vision.style
import hep.dataforge.vision.useStyle
import space.kscience.dataforge.meta.set
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.visionforge.solid.*
import space.kscience.visionforge.style
import space.kscience.visionforge.useStyle
import kotlin.math.PI
@DFExperimental

@ -1,17 +1,17 @@
package ru.mipt.npm.sat
import hep.dataforge.context.Global
import hep.dataforge.names.toName
import hep.dataforge.vision.solid.*
import hep.dataforge.vision.three.server.*
import hep.dataforge.vision.visionManager
import kotlinx.coroutines.GlobalScope
import kotlinx.coroutines.delay
import kotlinx.coroutines.isActive
import kotlinx.coroutines.launch
import kotlinx.html.div
import kotlinx.html.h1
import space.kscience.dataforge.context.Global
import space.kscience.dataforge.names.toName
import space.kscience.visionforge.solid.*
import space.kscience.visionforge.three.server.*
import space.kscience.visionforge.visionManager
import kotlin.random.Random
fun main() {

@ -44,5 +44,5 @@ kotlin {
}
application {
mainClassName = "hep.dataforge.vision.solid.demo.FXDemoAppKt"
mainClassName = "space.kscience.visionforge.solid.demo.FXDemoAppKt"
}

@ -1,14 +1,14 @@
package hep.dataforge.vision.solid.demo
package space.kscience.visionforge.solid.demo
import hep.dataforge.meta.Meta
import hep.dataforge.meta.invoke
import hep.dataforge.names.toName
import hep.dataforge.vision.Colors
import hep.dataforge.vision.VisionLayout
import hep.dataforge.vision.solid.*
import hep.dataforge.vision.solid.specifications.Canvas3DOptions
import hep.dataforge.vision.visible
import kotlinx.coroutines.*
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.meta.invoke
import space.kscience.dataforge.names.toName
import space.kscience.visionforge.Colors
import space.kscience.visionforge.VisionLayout
import space.kscience.visionforge.solid.*
import space.kscience.visionforge.solid.specifications.Canvas3DOptions
import space.kscience.visionforge.visible
import kotlin.math.PI
import kotlin.math.cos
import kotlin.math.sin

@ -1,14 +1,14 @@
package hep.dataforge.vision.solid.demo
package space.kscience.visionforge.solid.demo
import hep.dataforge.vision.Application
import hep.dataforge.vision.solid.x
import hep.dataforge.vision.solid.y
import hep.dataforge.vision.startApplication
import kotlinx.browser.document
import kotlinx.coroutines.GlobalScope
import kotlinx.coroutines.delay
import kotlinx.coroutines.isActive
import kotlinx.coroutines.launch
import space.kscience.visionforge.Application
import space.kscience.visionforge.solid.x
import space.kscience.visionforge.solid.y
import space.kscience.visionforge.startApplication
import kotlin.random.Random
private class ThreeDemoApp : Application {

@ -1,14 +1,5 @@
package hep.dataforge.vision.solid.demo
package space.kscience.visionforge.solid.demo
import hep.dataforge.context.Global
import hep.dataforge.meta.Meta
import hep.dataforge.meta.get
import hep.dataforge.meta.string
import hep.dataforge.names.Name
import hep.dataforge.vision.VisionLayout
import hep.dataforge.vision.solid.Solid
import hep.dataforge.vision.solid.three.ThreeCanvas
import hep.dataforge.vision.solid.three.ThreePlugin
import kotlinx.browser.document
import kotlinx.dom.clear
import kotlinx.html.dom.append
@ -18,6 +9,15 @@ import kotlinx.html.style
import org.w3c.dom.Element
import org.w3c.dom.HTMLDivElement
import org.w3c.dom.HTMLElement
import space.kscience.dataforge.context.Global
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.meta.get
import space.kscience.dataforge.meta.string
import space.kscience.dataforge.names.Name
import space.kscience.visionforge.VisionLayout
import space.kscience.visionforge.solid.Solid
import space.kscience.visionforge.solid.three.ThreeCanvas
import space.kscience.visionforge.solid.three.ThreePlugin
class ThreeDemoGrid(element: Element) : VisionLayout<Solid> {
private lateinit var navigationElement: HTMLElement

@ -1,20 +1,21 @@
package hep.dataforge.vision.solid.demo
package space.kscience.visionforge.solid.demo
import hep.dataforge.meta.*
import hep.dataforge.names.plus
import hep.dataforge.names.startsWith
import hep.dataforge.values.asValue
import hep.dataforge.vision.getProperty
import hep.dataforge.vision.onPropertyChange
import hep.dataforge.vision.set
import hep.dataforge.vision.setProperty
import hep.dataforge.vision.solid.*
import hep.dataforge.vision.solid.Solid.Companion.GEOMETRY_KEY
import hep.dataforge.vision.solid.three.*
import info.laht.threekt.core.BufferGeometry
import info.laht.threekt.core.Object3D
import info.laht.threekt.geometries.BoxBufferGeometry
import info.laht.threekt.objects.Mesh
import space.kscience.dataforge.meta.int
import space.kscience.dataforge.meta.number
import space.kscience.dataforge.names.plus
import space.kscience.dataforge.names.startsWith
import space.kscience.dataforge.values.asValue
import space.kscience.visionforge.getProperty
import space.kscience.visionforge.onPropertyChange
import space.kscience.visionforge.set
import space.kscience.visionforge.setProperty
import space.kscience.visionforge.solid.*
import space.kscience.visionforge.solid.Solid.Companion.GEOMETRY_KEY
import space.kscience.visionforge.solid.three.*
import kotlin.math.max
internal fun SolidGroup.varBox(

@ -1,4 +1,4 @@
package hep.dataforge.vision.solid.demo
package space.kscience.visionforge.solid.demo
import javafx.stage.Stage
import tornadofx.*

@ -1,15 +1,15 @@
package hep.dataforge.vision.solid.demo
package space.kscience.visionforge.solid.demo
import hep.dataforge.context.Global
import hep.dataforge.meta.Meta
import hep.dataforge.names.Name
import hep.dataforge.vision.VisionLayout
import hep.dataforge.vision.solid.FX3DPlugin
import hep.dataforge.vision.solid.FXCanvas3D
import hep.dataforge.vision.solid.Solid
import javafx.collections.FXCollections
import javafx.scene.Parent
import javafx.scene.control.Tab
import space.kscience.dataforge.context.Global
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.names.Name
import space.kscience.visionforge.VisionLayout
import space.kscience.visionforge.solid.FX3DPlugin
import space.kscience.visionforge.solid.FXCanvas3D
import space.kscience.visionforge.solid.Solid
import tornadofx.*
class FXDemoGrid : View(title = "DataForge-vis FX demo"), VisionLayout<Solid> {

@ -1,13 +1,13 @@
package hep.dataforge.vision.demo
package space.kscience.visionforge.demo
import hep.dataforge.meta.Meta
import hep.dataforge.meta.asConfig
import hep.dataforge.meta.descriptors.NodeDescriptor
import hep.dataforge.values.ValueType
import hep.dataforge.vision.editor.ConfigEditor
import hep.dataforge.vision.editor.FXMeta
import hep.dataforge.vision.editor.MetaViewer
import javafx.geometry.Orientation
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.meta.asConfig
import space.kscience.dataforge.meta.descriptors.NodeDescriptor
import space.kscience.dataforge.values.ValueType
import space.kscience.visionforge.editor.ConfigEditor
import space.kscience.visionforge.editor.FXMeta
import space.kscience.visionforge.editor.MetaViewer
import tornadofx.*

@ -1,6 +1,6 @@
pluginManagement {
val kotlinVersion = "1.4.30"
val toolsVersion = "0.8.3"
val kotlinVersion = "1.4.31"
val toolsVersion = "0.9.0"
repositories {
maven("https://repo.kotlin.link")

@ -1,4 +1,4 @@
package hep.dataforge.vision.bootstrap
package space.kscience.visionforge.bootstrap
public fun useBootstrap(){
kotlinext.js.require("bootstrap/dist/css/bootstrap.min.css")

@ -1,9 +1,5 @@
package hep.dataforge.vision.bootstrap
package space.kscience.visionforge.bootstrap
import hep.dataforge.vision.react.flexColumn
import hep.dataforge.vision.react.flexRow
import hep.dataforge.vision.solid.SolidGroup
import hep.dataforge.vision.solid.three.ThreeCanvas
import kotlinx.css.*
import kotlinx.css.properties.border
import kotlinx.html.InputType
@ -18,6 +14,10 @@ import react.dom.button
import react.dom.h3
import react.dom.input
import react.dom.label
import space.kscience.visionforge.react.flexColumn
import space.kscience.visionforge.react.flexRow
import space.kscience.visionforge.solid.SolidGroup
import space.kscience.visionforge.solid.three.ThreeCanvas
import styled.css
import styled.styledDiv

@ -1,8 +1,5 @@
package hep.dataforge.vision.bootstrap
package space.kscience.visionforge.bootstrap
import hep.dataforge.names.Name
import hep.dataforge.names.NameToken
import hep.dataforge.names.length
import kotlinx.html.ButtonType
import kotlinx.html.DIV
import kotlinx.html.id
@ -10,6 +7,9 @@ import kotlinx.html.js.onClickFunction
import react.RBuilder
import react.ReactElement
import react.dom.*
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.NameToken
import space.kscience.dataforge.names.length
import styled.StyledDOMBuilder
import styled.css
import styled.styledDiv

@ -1,6 +1,5 @@
package hep.dataforge.vision.bootstrap
package space.kscience.visionforge.bootstrap
import hep.dataforge.vision.react.flexColumn
import kotlinx.html.DIV
import kotlinx.html.classes
import kotlinx.html.js.onClickFunction
@ -8,6 +7,7 @@ import react.*
import react.dom.button
import react.dom.li
import react.dom.ul
import space.kscience.visionforge.react.flexColumn
import styled.StyledDOMBuilder
import styled.styledDiv

@ -1,15 +1,15 @@
package hep.dataforge.vision.bootstrap
package space.kscience.visionforge.bootstrap
import hep.dataforge.names.Name
import hep.dataforge.names.isEmpty
import hep.dataforge.vision.Vision
import hep.dataforge.vision.VisionGroup
import hep.dataforge.vision.react.objectTree
import hep.dataforge.vision.solid.three.ThreeCanvas
import kotlinx.css.*
import kotlinx.css.properties.border
import react.*
import react.dom.h2
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.isEmpty
import space.kscience.visionforge.Vision
import space.kscience.visionforge.VisionGroup
import space.kscience.visionforge.react.objectTree
import space.kscience.visionforge.solid.three.ThreeCanvas
import styled.css
import styled.styledDiv

@ -1,13 +1,13 @@
package hep.dataforge.vision.bootstrap
package space.kscience.visionforge.bootstrap
import hep.dataforge.meta.descriptors.NodeDescriptor
import hep.dataforge.vision.*
import hep.dataforge.vision.react.metaViewer
import hep.dataforge.vision.react.propertyEditor
import hep.dataforge.vision.solid.SolidReference
import org.w3c.dom.Element
import react.RBuilder
import react.dom.render
import space.kscience.dataforge.meta.descriptors.NodeDescriptor
import space.kscience.visionforge.*
import space.kscience.visionforge.react.metaViewer
import space.kscience.visionforge.react.propertyEditor
import space.kscience.visionforge.solid.SolidReference
public fun RBuilder.visionPropertyEditor(
vision: Vision,

@ -1,4 +1,4 @@
package hep.dataforge.vision.material
package space.kscience.visionforge.material
//@JsModule("@material-ui/icons/ExpandMore")
//external class ExpandMoreIcon : Component<RProps, RState>{

@ -1,7 +1,7 @@
package hep.dataforge.vision.material
package space.kscience.visionforge.material
import hep.dataforge.vision.react.component
import hep.dataforge.vision.react.state
import space.kscience.visionforge.react.component
import space.kscience.visionforge.react.state
import kotlinx.html.DIV
import materialui.components.card.card
import materialui.components.cardcontent.cardContent

@ -1,13 +1,13 @@
package hep.dataforge.vision.material
package space.kscience.visionforge.material
import hep.dataforge.names.Name
import hep.dataforge.names.plus
import hep.dataforge.names.toName
import hep.dataforge.vision.Vision
import hep.dataforge.vision.VisionGroup
import hep.dataforge.vision.isEmpty
import hep.dataforge.vision.react.component
import hep.dataforge.vision.react.state
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.plus
import space.kscience.dataforge.names.toName
import space.kscience.visionforge.Vision
import space.kscience.visionforge.VisionGroup
import space.kscience.visionforge.isEmpty
import space.kscience.visionforge.react.component
import space.kscience.visionforge.react.state
import kotlinx.html.UL
import materialui.lab.components.treeItem.treeItem
import materialui.lab.components.treeView.SingleSelectTreeViewElementBuilder

@ -1,21 +1,21 @@
package hep.dataforge.vision.react
package space.kscience.visionforge.react
import hep.dataforge.meta.Meta
import hep.dataforge.meta.MetaItemNode
import hep.dataforge.meta.MetaItemValue
import hep.dataforge.meta.descriptors.ItemDescriptor
import hep.dataforge.meta.descriptors.NodeDescriptor
import hep.dataforge.meta.descriptors.defaultItem
import hep.dataforge.meta.descriptors.get
import hep.dataforge.meta.get
import hep.dataforge.names.Name
import hep.dataforge.names.NameToken
import hep.dataforge.names.lastOrNull
import hep.dataforge.names.plus
import kotlinx.html.js.onClickFunction
import org.w3c.dom.events.Event
import react.*
import react.dom.a
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.meta.MetaItemNode
import space.kscience.dataforge.meta.MetaItemValue
import space.kscience.dataforge.meta.descriptors.ItemDescriptor
import space.kscience.dataforge.meta.descriptors.NodeDescriptor
import space.kscience.dataforge.meta.descriptors.defaultItem
import space.kscience.dataforge.meta.descriptors.get
import space.kscience.dataforge.meta.get
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.NameToken
import space.kscience.dataforge.names.lastOrNull
import space.kscience.dataforge.names.plus
import styled.*
public external interface MetaViewerProps : RProps {

@ -1,15 +1,15 @@
package hep.dataforge.vision.react
package space.kscience.visionforge.react
import hep.dataforge.names.Name
import hep.dataforge.names.lastOrNull
import hep.dataforge.names.plus
import hep.dataforge.names.startsWith
import hep.dataforge.vision.Vision
import hep.dataforge.vision.VisionGroup
import hep.dataforge.vision.isEmpty
import kotlinx.html.js.onClickFunction
import org.w3c.dom.events.Event
import react.*
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.lastOrNull
import space.kscience.dataforge.names.plus
import space.kscience.dataforge.names.startsWith
import space.kscience.visionforge.Vision
import space.kscience.visionforge.VisionGroup
import space.kscience.visionforge.isEmpty
import styled.*
public external interface ObjectTreeProps : RProps {

@ -1,13 +1,5 @@
package hep.dataforge.vision.react
package space.kscience.visionforge.react
import hep.dataforge.meta.*
import hep.dataforge.meta.descriptors.*
import hep.dataforge.names.Name
import hep.dataforge.names.NameToken
import hep.dataforge.names.lastOrNull
import hep.dataforge.names.plus
import hep.dataforge.values.Value
import hep.dataforge.vision.hidden
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.GlobalScope
@ -22,6 +14,17 @@ import org.w3c.dom.Element
import org.w3c.dom.events.Event
import react.*
import react.dom.render
import space.kscience.dataforge.meta.*
import space.kscience.dataforge.meta.descriptors.ItemDescriptor
import space.kscience.dataforge.meta.descriptors.NodeDescriptor
import space.kscience.dataforge.meta.descriptors.ValueDescriptor
import space.kscience.dataforge.meta.descriptors.get
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.NameToken
import space.kscience.dataforge.names.lastOrNull
import space.kscience.dataforge.names.plus
import space.kscience.dataforge.values.Value
import space.kscience.visionforge.hidden
import styled.*
public external interface PropertyEditorProps : RProps {

@ -1,16 +1,16 @@
package hep.dataforge.vision.react
package space.kscience.visionforge.react
import hep.dataforge.context.Context
import hep.dataforge.names.Name
import hep.dataforge.vision.solid.Solid
import hep.dataforge.vision.solid.specifications.Canvas3DOptions
import hep.dataforge.vision.solid.three.ThreeCanvas
import hep.dataforge.vision.solid.three.ThreePlugin
import kotlinx.css.Display
import kotlinx.css.display
import org.w3c.dom.Element
import org.w3c.dom.HTMLElement
import react.*
import space.kscience.dataforge.context.Context
import space.kscience.dataforge.names.Name
import space.kscience.visionforge.solid.Solid
import space.kscience.visionforge.solid.specifications.Canvas3DOptions
import space.kscience.visionforge.solid.three.ThreeCanvas
import space.kscience.visionforge.solid.three.ThreePlugin
import styled.css
import styled.styledDiv

@ -1,4 +1,4 @@
package hep.dataforge.vision.react
package space.kscience.visionforge.react
import kotlinx.css.*
import kotlinx.css.properties.*

@ -1,4 +1,4 @@
package hep.dataforge.vision.react
package space.kscience.visionforge.react
import kotlinx.css.Display
import kotlinx.css.FlexDirection

@ -1,11 +1,5 @@
package hep.dataforge.vision.react
package space.kscience.visionforge.react
import hep.dataforge.meta.*
import hep.dataforge.meta.descriptors.ValueDescriptor
import hep.dataforge.names.Name
import hep.dataforge.values.*
import hep.dataforge.vision.Colors
import hep.dataforge.vision.widgetType
import kotlinx.html.InputType
import kotlinx.html.js.onChangeFunction
import kotlinx.html.js.onKeyDownFunction
@ -14,6 +8,12 @@ import org.w3c.dom.HTMLSelectElement
import org.w3c.dom.events.Event
import react.*
import react.dom.option
import space.kscience.dataforge.meta.*
import space.kscience.dataforge.meta.descriptors.ValueDescriptor
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.values.*
import space.kscience.visionforge.Colors
import space.kscience.visionforge.widgetType
import styled.styledInput
import styled.styledSelect

@ -14,7 +14,7 @@ kotlin {
sourceSets {
commonMain {
dependencies {
api("hep.dataforge:dataforge-context:$dataforgeVersion")
api("space.kscience:dataforge-context:$dataforgeVersion")
api("org.jetbrains.kotlinx:kotlinx-html:$htmlVersion")
api("org.jetbrains:kotlin-css:1.0.0-$kotlinWrappersVersion")
}

@ -1,8 +0,0 @@
package hep.dataforge.vision
import hep.dataforge.meta.Meta
import hep.dataforge.names.Name
public interface VisionLayout<in V: Vision> {
public fun render(name: Name, vision: V, meta: Meta = Meta.EMPTY)
}

@ -1,9 +1,9 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.meta.*
import hep.dataforge.values.ValueType
import hep.dataforge.values.int
import hep.dataforge.values.string
import space.kscience.dataforge.meta.*
import space.kscience.dataforge.values.ValueType
import space.kscience.dataforge.values.int
import space.kscience.dataforge.values.string
import kotlin.math.max
/**

@ -1,8 +1,8 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.meta.Meta
import hep.dataforge.meta.MetaBuilder
import hep.dataforge.misc.DFExperimental
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.meta.MetaBuilder
import space.kscience.dataforge.misc.DFExperimental
import kotlin.properties.ReadOnlyProperty
/**

@ -1,10 +1,10 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.meta.*
import hep.dataforge.names.Name
import hep.dataforge.names.NameToken
import hep.dataforge.names.asName
import hep.dataforge.names.plus
import space.kscience.dataforge.meta.*
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.NameToken
import space.kscience.dataforge.names.asName
import space.kscience.dataforge.names.plus
/**
* A container for styles

@ -1,18 +1,18 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.meta.*
import hep.dataforge.meta.descriptors.Described
import hep.dataforge.meta.descriptors.NodeDescriptor
import hep.dataforge.meta.descriptors.get
import hep.dataforge.misc.Type
import hep.dataforge.names.Name
import hep.dataforge.names.asName
import hep.dataforge.names.toName
import hep.dataforge.vision.Vision.Companion.TYPE
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.launchIn
import kotlinx.coroutines.flow.onEach
import space.kscience.dataforge.meta.*
import space.kscience.dataforge.meta.descriptors.Described
import space.kscience.dataforge.meta.descriptors.NodeDescriptor
import space.kscience.dataforge.meta.descriptors.get
import space.kscience.dataforge.misc.Type
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.asName
import space.kscience.dataforge.names.toName
import space.kscience.visionforge.Vision.Companion.TYPE
/**
* A root type for display hierarchy

@ -1,16 +1,5 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.meta.*
import hep.dataforge.meta.descriptors.NodeDescriptor
import hep.dataforge.meta.descriptors.defaultItem
import hep.dataforge.meta.descriptors.get
import hep.dataforge.misc.DFExperimental
import hep.dataforge.names.Name
import hep.dataforge.names.asName
import hep.dataforge.names.plus
import hep.dataforge.values.Null
import hep.dataforge.values.ValueType
import hep.dataforge.vision.Vision.Companion.STYLE_KEY
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.GlobalScope
import kotlinx.coroutines.flow.Flow
@ -19,6 +8,17 @@ import kotlinx.coroutines.launch
import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable
import kotlinx.serialization.Transient
import space.kscience.dataforge.meta.*
import space.kscience.dataforge.meta.descriptors.NodeDescriptor
import space.kscience.dataforge.meta.descriptors.defaultItem
import space.kscience.dataforge.meta.descriptors.get
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.asName
import space.kscience.dataforge.names.plus
import space.kscience.dataforge.values.Null
import space.kscience.dataforge.values.ValueType
import space.kscience.visionforge.Vision.Companion.STYLE_KEY
import kotlin.jvm.Synchronized
internal data class PropertyListener(

@ -1,16 +1,16 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.meta.*
import hep.dataforge.misc.DFExperimental
import hep.dataforge.names.Name
import hep.dataforge.names.plus
import hep.dataforge.values.Null
import kotlinx.coroutines.*
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.flow
import kotlinx.coroutines.flow.launchIn
import kotlinx.coroutines.flow.onEach
import kotlinx.serialization.Serializable
import space.kscience.dataforge.meta.*
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.plus
import space.kscience.dataforge.values.Null
import kotlin.jvm.Synchronized
import kotlin.time.Duration

@ -1,8 +1,8 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.context.Context
import hep.dataforge.context.PluginManager
import hep.dataforge.misc.DFExperimental
import space.kscience.dataforge.context.Context
import space.kscience.dataforge.context.PluginManager
import space.kscience.dataforge.misc.DFExperimental
public expect object VisionForge

@ -1,8 +1,8 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.names.*
import hep.dataforge.provider.Provider
import kotlinx.coroutines.flow.Flow
import space.kscience.dataforge.names.*
import space.kscience.dataforge.provider.Provider
public interface VisionContainer<out V : Vision> {
public operator fun get(name: Name): V?

@ -1,12 +1,12 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.names.*
import kotlinx.coroutines.flow.MutableSharedFlow
import kotlinx.coroutines.flow.SharedFlow
import kotlinx.coroutines.launch
import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable
import kotlinx.serialization.Transient
import space.kscience.dataforge.names.*
/**

@ -0,0 +1,8 @@
package space.kscience.visionforge
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.names.Name
public interface VisionLayout<in V: Vision> {
public fun render(name: Name, vision: V, meta: Meta = Meta.EMPTY)
}

@ -1,16 +1,19 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.context.*
import hep.dataforge.meta.*
import hep.dataforge.meta.descriptors.NodeDescriptor
import hep.dataforge.names.Name
import hep.dataforge.names.toName
import kotlinx.serialization.PolymorphicSerializer
import kotlinx.serialization.json.Json
import kotlinx.serialization.json.JsonElement
import kotlinx.serialization.modules.SerializersModule
import kotlinx.serialization.modules.polymorphic
import kotlinx.serialization.modules.subclass
import space.kscience.dataforge.context.*
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.meta.descriptors.NodeDescriptor
import space.kscience.dataforge.meta.node
import space.kscience.dataforge.meta.toJson
import space.kscience.dataforge.meta.toMetaItem
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.toName
import kotlin.reflect.KClass
public class VisionManager(meta: Meta) : AbstractPlugin(meta) {

@ -1,7 +1,7 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.meta.MetaItem
import hep.dataforge.names.Name
import space.kscience.dataforge.meta.MetaItem
import space.kscience.dataforge.names.Name
/**
* Property containers are used to create a symmetric behaviors for vision properties and style builders

@ -1,9 +1,9 @@
package hep.dataforge.vision.html
package space.kscience.visionforge.html
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.VisionForge
import kotlinx.html.FlowContent
import kotlinx.html.TagConsumer
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.visionforge.VisionForge
public typealias HtmlFragment = TagConsumer<*>.() -> Unit

@ -1,11 +1,11 @@
package hep.dataforge.vision.html
package space.kscience.visionforge.html
import hep.dataforge.context.Context
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.VisionForge
import hep.dataforge.vision.context
import hep.dataforge.vision.visionManager
import kotlinx.html.*
import space.kscience.dataforge.context.Context
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.visionforge.VisionForge
import space.kscience.visionforge.context
import space.kscience.visionforge.visionManager
public data class Page(
public val context: Context,

@ -1,15 +1,15 @@
package hep.dataforge.vision.html
package space.kscience.visionforge.html
import hep.dataforge.meta.Meta
import hep.dataforge.meta.MetaBuilder
import hep.dataforge.meta.MetaSerializer
import hep.dataforge.meta.isEmpty
import hep.dataforge.misc.DFExperimental
import hep.dataforge.names.Name
import hep.dataforge.names.toName
import hep.dataforge.vision.Vision
import hep.dataforge.vision.VisionManager
import kotlinx.html.*
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.meta.MetaBuilder
import space.kscience.dataforge.meta.MetaSerializer
import space.kscience.dataforge.meta.isEmpty
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.toName
import space.kscience.visionforge.Vision
import space.kscience.visionforge.VisionManager
import kotlin.collections.set

@ -1,10 +1,10 @@
package hep.dataforge.vision.html
package space.kscience.visionforge.html
import hep.dataforge.meta.Meta
import hep.dataforge.names.Name
import hep.dataforge.vision.Vision
import hep.dataforge.vision.VisionManager
import kotlinx.html.*
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.names.Name
import space.kscience.visionforge.Vision
import space.kscience.visionforge.VisionManager
public fun TagConsumer<*>.embedVisionFragment(

@ -1,7 +1,7 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.meta.*
import hep.dataforge.values.asValue
import space.kscience.dataforge.meta.*
import space.kscience.dataforge.values.asValue
@DslMarker
public annotation class VisionBuilder

@ -1,13 +1,13 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.meta.*
import hep.dataforge.meta.descriptors.ItemDescriptor
import hep.dataforge.meta.descriptors.NodeDescriptor
import hep.dataforge.meta.descriptors.ValueDescriptor
import hep.dataforge.meta.descriptors.attributes
import hep.dataforge.names.Name
import hep.dataforge.values.ValueType
import hep.dataforge.values.asValue
import space.kscience.dataforge.meta.*
import space.kscience.dataforge.meta.descriptors.ItemDescriptor
import space.kscience.dataforge.meta.descriptors.NodeDescriptor
import space.kscience.dataforge.meta.descriptors.ValueDescriptor
import space.kscience.dataforge.meta.descriptors.attributes
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.values.ValueType
import space.kscience.dataforge.values.asValue
private const val INHERITED_DESCRIPTOR_ATTRIBUTE = "inherited"
private const val STYLE_DESCRIPTOR_ATTRIBUTE = "useStyles"

@ -1,13 +1,13 @@
package hep.dataforge.vision.visitor
package space.kscience.visionforge.visitor
import hep.dataforge.names.Name
import hep.dataforge.names.length
import hep.dataforge.vision.Vision
import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.Job
import kotlinx.coroutines.channels.awaitClose
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.callbackFlow
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.length
import space.kscience.visionforge.Vision
import kotlin.reflect.KClass

@ -1,12 +1,12 @@
package hep.dataforge.vision.visitor
package space.kscience.visionforge.visitor
import hep.dataforge.names.Name
import hep.dataforge.names.plus
import hep.dataforge.vision.Vision
import hep.dataforge.vision.VisionGroup
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Job
import kotlinx.coroutines.launch
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.plus
import space.kscience.visionforge.Vision
import space.kscience.visionforge.VisionGroup
public interface VisionVisitor {
/**

@ -1,12 +1,12 @@
package hep.dataforge.vision.html
package space.kscience.visionforge.html
import hep.dataforge.meta.set
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.VisionBase
import hep.dataforge.vision.configure
import hep.dataforge.vision.meta
import kotlinx.html.*
import kotlinx.html.stream.createHTML
import space.kscience.dataforge.meta.set
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.visionforge.VisionBase
import space.kscience.visionforge.configure
import space.kscience.visionforge.meta
import kotlin.test.Test
@DFExperimental

@ -1,4 +1,4 @@
package hep.dataforge.vision
package space.kscience.visionforge
import kotlinx.browser.document
import kotlinx.dom.hasClass

@ -1,13 +1,5 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.context.*
import hep.dataforge.meta.Meta
import hep.dataforge.meta.MetaSerializer
import hep.dataforge.vision.html.VisionTagConsumer
import hep.dataforge.vision.html.VisionTagConsumer.Companion.OUTPUT_CONNECT_ATTRIBUTE
import hep.dataforge.vision.html.VisionTagConsumer.Companion.OUTPUT_ENDPOINT_ATTRIBUTE
import hep.dataforge.vision.html.VisionTagConsumer.Companion.OUTPUT_FETCH_ATTRIBUTE
import hep.dataforge.vision.html.VisionTagConsumer.Companion.OUTPUT_NAME_ATTRIBUTE
import kotlinx.browser.document
import kotlinx.browser.window
import org.w3c.dom.Element
@ -15,6 +7,14 @@ import org.w3c.dom.WebSocket
import org.w3c.dom.asList
import org.w3c.dom.get
import org.w3c.dom.url.URL
import space.kscience.dataforge.context.*
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.meta.MetaSerializer
import space.kscience.visionforge.html.VisionTagConsumer
import space.kscience.visionforge.html.VisionTagConsumer.Companion.OUTPUT_CONNECT_ATTRIBUTE
import space.kscience.visionforge.html.VisionTagConsumer.Companion.OUTPUT_ENDPOINT_ATTRIBUTE
import space.kscience.visionforge.html.VisionTagConsumer.Companion.OUTPUT_FETCH_ATTRIBUTE
import space.kscience.visionforge.html.VisionTagConsumer.Companion.OUTPUT_NAME_ATTRIBUTE
import kotlin.collections.set
import kotlin.reflect.KClass

@ -1,8 +1,8 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.meta.Meta
import hep.dataforge.misc.Type
import org.w3c.dom.Element
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.misc.Type
@Type(ElementVisionRenderer.TYPE)
public interface ElementVisionRenderer {

@ -1,9 +1,9 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.context.Context
import hep.dataforge.misc.DFExperimental
import kotlinx.browser.document
import kotlinx.browser.window
import space.kscience.dataforge.context.Context
import space.kscience.dataforge.misc.DFExperimental
@JsExport
@DFExperimental

@ -1,10 +1,10 @@
package hep.dataforge.vision.html
package space.kscience.visionforge.html
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.VisionManager
import kotlinx.html.link
import kotlinx.html.script
import kotlinx.html.unsafe
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.visionforge.VisionManager
import java.nio.file.Files
import java.nio.file.Path
import java.nio.file.StandardOpenOption

@ -1,11 +1,9 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.context.Context
import hep.dataforge.misc.DFExperimental
import hep.dataforge.vision.html.HtmlFragment
import hep.dataforge.vision.html.HtmlVisionFragment
import hep.dataforge.vision.html.Page
import kotlinx.html.stream.createHTML
import space.kscience.dataforge.misc.DFExperimental
import space.kscience.visionforge.html.HtmlFragment
import space.kscience.visionforge.html.Page
import java.awt.Desktop
import java.nio.file.Files
import java.nio.file.Path

@ -1,8 +1,8 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.context.Context
import hep.dataforge.context.PluginFactory
import hep.dataforge.misc.DFExperimental
import space.kscience.dataforge.context.Context
import space.kscience.dataforge.context.PluginFactory
import space.kscience.dataforge.misc.DFExperimental
public actual object VisionForge

@ -1,4 +1,4 @@
package hep.dataforge.vision.visitor
package space.kscience.visionforge.visitor
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.collect

@ -1,8 +1,5 @@
package hep.dataforge.vision
package space.kscience.visionforge
import hep.dataforge.context.*
import hep.dataforge.meta.Meta
import hep.dataforge.meta.boolean
import javafx.application.Application
import javafx.application.Platform
import javafx.collections.FXCollections
@ -12,6 +9,9 @@ import javafx.scene.Scene
import javafx.scene.image.Image
import javafx.scene.image.ImageView
import javafx.stage.Stage
import space.kscience.dataforge.context.*
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.meta.boolean
import tornadofx.*
import kotlin.concurrent.thread
import kotlin.reflect.KClass
@ -46,7 +46,7 @@ public class FXPlugin(meta: Meta = Meta.EMPTY) : AbstractPlugin(meta) {
if (FX.getApplication(FX.defaultScope) == null) {
if (consoleMode) {
thread(name = "${context.name} FX application thread") {
context.logger.debug("Starting FX application surrogate")
context.logger.debug{"Starting FX application surrogate"}
launch<ApplicationSurrogate>()
}

@ -1,15 +1,15 @@
package hep.dataforge.vision.editor
package space.kscience.visionforge.editor
import hep.dataforge.meta.Meta
import hep.dataforge.names.Name
import hep.dataforge.names.asName
import hep.dataforge.values.Null
import hep.dataforge.values.Value
import hep.dataforge.values.asValue
import hep.dataforge.values.string
import javafx.scene.control.ColorPicker
import javafx.scene.paint.Color
import org.slf4j.LoggerFactory
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.asName
import space.kscience.dataforge.values.Null
import space.kscience.dataforge.values.Value
import space.kscience.dataforge.values.asValue
import space.kscience.dataforge.values.string
import tornadofx.*
/**

@ -3,19 +3,19 @@
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package hep.dataforge.vision.editor
package space.kscience.visionforge.editor
import hep.dataforge.meta.Meta
import hep.dataforge.meta.get
import hep.dataforge.meta.value
import hep.dataforge.names.Name
import hep.dataforge.names.asName
import hep.dataforge.values.Value
import hep.dataforge.values.parseValue
import hep.dataforge.values.string
import javafx.collections.FXCollections
import javafx.scene.control.ComboBox
import javafx.util.StringConverter
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.meta.get
import space.kscience.dataforge.meta.value
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.asName
import space.kscience.dataforge.values.Value
import space.kscience.dataforge.values.parseValue
import space.kscience.dataforge.values.string
import java.util.*
public class ComboBoxValueChooser(public val values: Collection<Value>? = null) : ValueChooserBase<ComboBox<Value>>() {

@ -3,15 +3,10 @@
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package hep.dataforge.vision.editor
package space.kscience.visionforge.editor
import de.jensd.fx.glyphs.fontawesome.FontAwesomeIcon
import de.jensd.fx.glyphs.fontawesome.FontAwesomeIconView
import hep.dataforge.context.Global
import hep.dataforge.meta.Config
import hep.dataforge.meta.descriptors.NodeDescriptor
import hep.dataforge.names.NameToken
import hep.dataforge.vision.dfIconView
import javafx.scene.Node
import javafx.scene.control.*
import javafx.scene.control.cell.TextFieldTreeTableCell
@ -20,6 +15,11 @@ import javafx.scene.layout.HBox
import javafx.scene.layout.Priority
import javafx.scene.paint.Color
import javafx.scene.text.Text
import space.kscience.dataforge.context.Global
import space.kscience.dataforge.meta.Config
import space.kscience.dataforge.meta.descriptors.NodeDescriptor
import space.kscience.dataforge.names.NameToken
import space.kscience.visionforge.dfIconView
import tornadofx.*
/**

@ -1,18 +1,18 @@
package hep.dataforge.vision.editor
package space.kscience.visionforge.editor
import hep.dataforge.meta.*
import hep.dataforge.meta.descriptors.ItemDescriptor
import hep.dataforge.meta.descriptors.NodeDescriptor
import hep.dataforge.meta.descriptors.ValueDescriptor
import hep.dataforge.names.*
import hep.dataforge.values.Null
import hep.dataforge.values.Value
import javafx.beans.binding.ListBinding
import javafx.beans.binding.ObjectBinding
import javafx.beans.property.SimpleObjectProperty
import javafx.beans.value.ObservableBooleanValue
import javafx.beans.value.ObservableStringValue
import javafx.collections.ObservableList
import space.kscience.dataforge.meta.*
import space.kscience.dataforge.meta.descriptors.ItemDescriptor
import space.kscience.dataforge.meta.descriptors.NodeDescriptor
import space.kscience.dataforge.meta.descriptors.ValueDescriptor
import space.kscience.dataforge.names.*
import space.kscience.dataforge.values.Null
import space.kscience.dataforge.values.Value
import tornadofx.*
/**

@ -14,15 +14,15 @@
* limitations under the License.
*/
package hep.dataforge.vision.editor
package space.kscience.visionforge.editor
import hep.dataforge.meta.Meta
import hep.dataforge.values.string
import hep.dataforge.vision.dfIconView
import javafx.beans.property.SimpleStringProperty
import javafx.scene.control.TreeItem
import javafx.scene.control.TreeSortMode
import javafx.scene.control.TreeTableView
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.values.string
import space.kscience.visionforge.dfIconView
import tornadofx.*
class MetaViewer(val rootNode: FXMetaNode<*>, title: String = "Meta viewer") : Fragment(title,

@ -3,16 +3,16 @@
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package hep.dataforge.vision.editor
package space.kscience.visionforge.editor
import hep.dataforge.meta.Meta
import hep.dataforge.names.Name
import hep.dataforge.names.asName
import hep.dataforge.values.*
import javafx.beans.value.ObservableValue
import javafx.scene.control.TextField
import javafx.scene.input.KeyCode
import javafx.scene.input.KeyEvent
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.names.Name
import space.kscience.dataforge.names.asName
import space.kscience.dataforge.values.*
import tornadofx.*
class TextValueChooser : ValueChooserBase<TextField>() {

@ -3,9 +3,9 @@
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package hep.dataforge.vision.editor
package space.kscience.visionforge.editor
import hep.dataforge.values.Value
import space.kscience.dataforge.values.Value
/**

@ -3,22 +3,22 @@
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package hep.dataforge.vision.editor
package space.kscience.visionforge.editor
import hep.dataforge.context.Context
import hep.dataforge.meta.Meta
import hep.dataforge.meta.descriptors.ValueDescriptor
import hep.dataforge.misc.Named
import hep.dataforge.misc.Type
import hep.dataforge.names.toName
import hep.dataforge.provider.provideByType
import hep.dataforge.values.Null
import hep.dataforge.values.Value
import hep.dataforge.vision.widget
import hep.dataforge.vision.widgetType
import javafx.beans.property.ObjectProperty
import javafx.beans.value.ObservableValue
import javafx.scene.Node
import space.kscience.dataforge.context.Context
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.meta.descriptors.ValueDescriptor
import space.kscience.dataforge.misc.Named
import space.kscience.dataforge.misc.Type
import space.kscience.dataforge.names.toName
import space.kscience.dataforge.provider.provideByType
import space.kscience.dataforge.values.Null
import space.kscience.dataforge.values.Value
import space.kscience.visionforge.widget
import space.kscience.visionforge.widgetType
import tornadofx.*
/**
@ -63,7 +63,7 @@ public interface ValueChooser {
public fun setCallback(callback: ValueCallback)
@Type("hep.dataforge.vis.fx.valueChooserFactory")
@Type("space.kscience.dataforge.vis.fx.valueChooserFactory")
public interface Factory : Named {
public operator fun invoke(meta: Meta = Meta.EMPTY): ValueChooser
}

@ -3,14 +3,14 @@
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package hep.dataforge.vision.editor
package space.kscience.visionforge.editor
import hep.dataforge.meta.descriptors.ValueDescriptor
import hep.dataforge.values.Null
import hep.dataforge.values.Value
import javafx.beans.property.SimpleObjectProperty
import javafx.scene.Node
import org.slf4j.LoggerFactory
import space.kscience.dataforge.meta.descriptors.ValueDescriptor
import space.kscience.dataforge.values.Null
import space.kscience.dataforge.values.Value
import tornadofx.*
/**

@ -1,13 +1,16 @@
package hep.dataforge.vision.editor
package space.kscience.visionforge.editor
import hep.dataforge.meta.*
import hep.dataforge.meta.descriptors.NodeDescriptor
import hep.dataforge.vision.*
import javafx.beans.binding.Binding
import javafx.beans.property.SimpleObjectProperty
import javafx.scene.Node
import javafx.scene.Parent
import javafx.scene.layout.VBox
import space.kscience.dataforge.meta.Config
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.meta.MutableItemProvider
import space.kscience.dataforge.meta.descriptors.NodeDescriptor
import space.kscience.dataforge.meta.update
import space.kscience.visionforge.*
import tornadofx.*
class VisualObjectEditorFragment(val selector: (Vision) -> Meta) : Fragment() {

@ -1,10 +1,10 @@
package hep.dataforge.vision.editor
package space.kscience.visionforge.editor
import hep.dataforge.vision.Vision
import hep.dataforge.vision.VisionGroup
import javafx.beans.property.SimpleObjectProperty
import javafx.scene.control.SelectionMode
import javafx.scene.control.TreeItem
import space.kscience.visionforge.Vision
import space.kscience.visionforge.VisionGroup
import tornadofx.*
private fun toTreeItem(vision: Vision, title: String): TreeItem<Pair<String, Vision>> {

@ -1,12 +1,5 @@
package hep.dataforge.vision.solid
package space.kscience.visionforge.solid
import hep.dataforge.context.*
import hep.dataforge.meta.Meta
import hep.dataforge.meta.boolean
import hep.dataforge.misc.Type
import hep.dataforge.vision.solid.FX3DFactory.Companion.TYPE
import hep.dataforge.vision.solid.SolidMaterial.Companion.MATERIAL_KEY
import hep.dataforge.vision.solid.SolidMaterial.Companion.MATERIAL_WIREFRAME_KEY
import javafx.scene.Group
import javafx.scene.Node
import javafx.scene.shape.CullFace
@ -19,6 +12,13 @@ import org.fxyz3d.geometry.Point3D
import org.fxyz3d.shapes.composites.PolyLine3D
import org.fxyz3d.shapes.primitives.CuboidMesh
import org.fxyz3d.shapes.primitives.SpheroidMesh
import space.kscience.dataforge.context.*
import space.kscience.dataforge.meta.Meta
import space.kscience.dataforge.meta.boolean
import space.kscience.dataforge.misc.Type
import space.kscience.visionforge.solid.FX3DFactory.Companion.TYPE
import space.kscience.visionforge.solid.SolidMaterial.Companion.MATERIAL_KEY
import space.kscience.visionforge.solid.SolidMaterial.Companion.MATERIAL_WIREFRAME_KEY
import kotlin.collections.set
import kotlin.math.PI
import kotlin.reflect.KClass

@ -1,14 +1,14 @@
package hep.dataforge.vision.solid
package space.kscience.visionforge.solid
import hep.dataforge.context.Context
import hep.dataforge.context.ContextAware
import hep.dataforge.vision.solid.specifications.Canvas3DOptions
import javafx.application.Platform
import javafx.beans.property.ObjectProperty
import javafx.beans.property.SimpleObjectProperty
import javafx.scene.*
import javafx.scene.paint.Color
import org.fxyz3d.scene.Axes
import space.kscience.dataforge.context.Context
import space.kscience.dataforge.context.ContextAware
import space.kscience.visionforge.solid.specifications.Canvas3DOptions
import tornadofx.*
class FXCanvas3D(

@ -1,4 +1,4 @@
package hep.dataforge.vision.solid
package space.kscience.visionforge.solid
import eu.mihosoft.jcsg.CSG
import eu.mihosoft.jcsg.Polygon
@ -8,8 +8,6 @@ import javafx.scene.Node
import javafx.scene.shape.MeshView
import javafx.scene.shape.TriangleMesh
import javafx.scene.shape.VertexFormat
import java.util.*
import kotlin.collections.HashMap
import kotlin.reflect.KClass
private fun MeshView.toCSG(): CSG {

Some files were not shown because too many files have changed in this diff Show More