Repository navigation
Expand file tree
/
Copy pathtext.groovy
More file actions
59 lines (56 loc) · 1.57 KB
/
Copy pathtext.groovy
File metadata and controls
59 lines (56 loc) · 1.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import eu.mihosoft.vrl.v3d.CSG
import eu.mihosoft.vrl.v3d.Cube
import javafx.scene.paint.Color
import eu.mihosoft.vrl.v3d.parametrics.*;
CSG getObject(){
if(args==null)
args=["Test_key_here"]
StringParameter word = new StringParameter( args[0]+"_CaDoodle_TextGeneration_Value",
"Text",[])
HashSet<String> fontOptions = new HashSet<>();
//fontOptions.addAll(javafx.scene.text.Font.getFontNames() )
int index = 0;
int numFonts=6
for(String font:javafx.scene.text.Font.getFontNames()) {
if(font.toLowerCase().contains("mono")&&!fontOptions.contains(font)) {
fontOptions.add(font);
index++;
}
if(index>numFonts)
break;
}
index = 0;
for(String font:javafx.scene.text.Font.getFontNames()) {
if(font.toLowerCase().contains("serif")&&!fontOptions.contains(font)) {
fontOptions.add(font);
index++;
}
if(index>numFonts)
break;
}
index = 0;
for(String font:javafx.scene.text.Font.getFontNames()) {
if(font.toLowerCase().contains("sans")&&!fontOptions.contains(font)) {
fontOptions.add(font);
index++;
}
if(index>numFonts)
break;
}
ArrayList<String> option=new ArrayList<>()
option.addAll(fontOptions)
option.add("System Regular")
StringParameter font = new StringParameter( args[0]+"_CaDoodle_TextGeneration_Font",
option.get(option.size()-1),option)
CSG text = CSG.text(word.getStrValue() , 10, 20, font.getStrValue())
text= text.toZMin()
.rotz(-90)
.moveToCenterX()
.moveToCenterY()
.setColor(Color.PINK)
return text
.setParameter(word)
.setParameter(font)
.setRegenerate({getObject()})
}
return getObject()