Skip to content
Snippets Groups Projects
Commit 5f5b4c6f authored by Sebastian Böttger's avatar Sebastian Böttger
Browse files

Merge branch 'Release2.0' into 'main'

Release2.0

See merge request sboettger/kiwi-home-light-control-system!11
parents 44f59a02 ecda3c6b
No related branches found
No related tags found
No related merge requests found
Showing
with 400 additions and 1 deletion
# project documentation
/doc/projectDocumentation/Medien
/doc/projectDocumentation/*.aux
/doc/projectDocumentation/*.bbl
/doc/projectDocumentation/*.bib
/doc/projectDocumentation/*.blg
/doc/projectDocumentation/*.gz
/doc/projectDocumentation/*.lof
/doc/projectDocumentation/*.log
/doc/projectDocumentation/*.lol
/doc/projectDocumentation/*.lot
/doc/projectDocumentation/*.out
/doc/projectDocumentation/*.run*
/doc/projectDocumentation/*.toc
# libraries Arduino
/src/lightControlUnit/libraries
# vsCode
/.vscode
# eclips
*.project
\ No newline at end of file
......@@ -2,9 +2,11 @@
KIWI is a light control system for DMX-fixtures in a home environment.
## Features
With this software, you can controlle DMX fixture via Art-Net
## Project status
Work in progress
Sofwtare: DONE
Documentation: WORK IN PROGRESS
## Author
Sebastian Böttger
......
<diagram program="umletino" version="15.1"><zoom_level>13</zoom_level><element><id>UMLClass</id><coordinates><x>13</x><y>377</y><w>130</w><h>39</h></coordinates><panel_attributes>Fixture</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>0</x><y>260</y><w>169</w><h>39</h></coordinates><panel_attributes>FixturesRepository</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>247</x><y>260</y><w>169</w><h>39</h></coordinates><panel_attributes>GroupsRepository</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>260</x><y>377</y><w>130</w><h>39</h></coordinates><panel_attributes>Group</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>364</x><y>663</y><w>234</w><h>39</h></coordinates><panel_attributes>LightingMoodsRepository</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>416</x><y>793</y><w>130</w><h>39</h></coordinates><panel_attributes>LightingMood</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>65</x><y>286</y><w>39</w><h>117</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>10;70;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>312</x><y>286</y><w>39</w><h>117</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>10;70;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>468</x><y>689</y><w>39</w><h>130</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>10;80;10;10</additional_attributes></element><element><id>UMLClass</id><coordinates><x>52</x><y>663</y><w>234</w><h>39</h></coordinates><panel_attributes>CompositionsRepository</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>91</x><y>780</y><w>156</w><h>39</h></coordinates><panel_attributes>Composition</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>156</x><y>689</y><w>39</w><h>117</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>10;70;10;10</additional_attributes></element><element><id>UMLClass</id><coordinates><x>507</x><y>91</y><w>156</w><h>39</h></coordinates><panel_attributes>ArtNetController
</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>507</x><y>195</y><w>156</w><h>52</h></coordinates><panel_attributes>&lt;&lt;interface&gt;&gt;
LightControllable</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>572</x><y>117</y><w>39</w><h>104</h></coordinates><panel_attributes>lt=&lt;&lt;.</panel_attributes><additional_attributes>10;60;10;10</additional_attributes></element><element><id>UMLClass</id><coordinates><x>247</x><y>91</y><w>169</w><h>39</h></coordinates><panel_attributes>KiwiModelHandler</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>312</x><y>117</y><w>39</w><h>169</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>10;110;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>65</x><y>91</y><w>208</w><h>195</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>10;130;10;10;140;10</additional_attributes></element><element><id>UMLClass</id><coordinates><x>247</x><y>520</y><w>169</w><h>39</h></coordinates><panel_attributes>PresetsRepository</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>273</x><y>611</y><w>104</w><h>39</h></coordinates><panel_attributes>Preset
</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>312</x><y>546</y><w>39</w><h>91</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>10;50;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>156</x><y>403</y><w>130</w><h>286</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>10;200;10;10;80;10</additional_attributes></element><element><id>Relation</id><coordinates><x>377</x><y>403</y><w>130</w><h>286</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>80;200;80;10;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>156</x><y>260</y><w>130</w><h>143</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>10;10;40;10;40;90;80;90</additional_attributes></element><element><id>Relation</id><coordinates><x>65</x><y>403</y><w>39</w><h>286</h></coordinates><panel_attributes>lt=-&gt;</panel_attributes><additional_attributes>10;200;10;10</additional_attributes></element><element><id>UMLClass</id><coordinates><x>273</x><y>910</y><w>130</w><h>39</h></coordinates><panel_attributes>DmxValues</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>390</x><y>819</y><w>117</w><h>143</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;90;70;90;70;10</additional_attributes></element><element><id>Relation</id><coordinates><x>13</x><y>403</y><w>286</w><h>559</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>200;410;10;410;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>195</x><y>403</y><w>117</w><h>234</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>70;10;70;70;10;70;10;130;70;130;70;160</additional_attributes></element><element><id>UMLClass</id><coordinates><x>507</x><y>0</y><w>156</w><h>39</h></coordinates><panel_attributes>UdpListener</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>260</x><y>728</y><w>130</w><h>52</h></coordinates><panel_attributes>&lt;&lt;interface&gt;&gt;
LightingScene</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>377</x><y>728</y><w>91</w><h>91</h></coordinates><panel_attributes>lt=&lt;&lt;.</panel_attributes><additional_attributes>10;10;50;10;50;50</additional_attributes></element><element><id>Relation</id><coordinates><x>208</x><y>728</y><w>78</w><h>78</h></coordinates><panel_attributes>lt=&lt;&lt;.</panel_attributes><additional_attributes>40;10;10;10;10;40</additional_attributes></element><element><id>Relation</id><coordinates><x>312</x><y>637</y><w>39</w><h>117</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>10;70;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>182</x><y>806</y><w>117</w><h>130</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>70;80;10;80;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>572</x><y>26</y><w>39</w><h>91</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>10;10;10;50</additional_attributes></element><element><id>Relation</id><coordinates><x>403</x><y>91</y><w>130</w><h>39</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>80;10;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>377</x><y>234</y><w>234</w><h>169</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>160;10;160;110;10;110</additional_attributes></element><element><id>UMLClass</id><coordinates><x>637</x><y>910</y><w>130</w><h>39</h></coordinates><panel_attributes>PropertyItem</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>390</x><y>117</y><w>78</w><h>429</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>10;310;10;260;40;260;40;60;10;60;10;10</additional_attributes></element><element><id>UMLClass</id><coordinates><x>728</x><y>91</y><w>195</w><h>39</h></coordinates><panel_attributes>ArtNetNodeRepository</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>728</x><y>195</y><w>195</w><h>39</h></coordinates><panel_attributes>ArtNetNode</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLPackage</id><coordinates><x>624</x><y>312</y><w>208</w><h>182</h></coordinates><panel_attributes>artNetPakages
--
+ ArtCommand
+ ArtDataReply
+ ArtDataRequest
+ ArtDmx
+ ArtNetCodeLibrary
+ ArtPoll
+ ArtPollReply
valign=top
halign=left
</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLPackage</id><coordinates><x>624</x><y>533</y><w>234</w><h>221</h></coordinates><panel_attributes>artNetCommands
--
+ ActivateGroupCommand
+ ActivatePresetCommand
+ ClearPresetCommand
+ DeactivateGroupCommand
+ DeactivatePresetCommand
+ PresetActivatedCommand
+ PresetDeactivatedCommand
+ SetChannelStateCommand
+ SetPresetCommand
valign=top
halign=left
</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>650</x><y>91</y><w>104</w><h>39</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>60;10;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>806</x><y>117</y><w>39</w><h>104</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;&gt;</panel_attributes><additional_attributes>10;60;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>637</x><y>117</y><w>260</w><h>468</h></coordinates><panel_attributes>lt=.&gt;
m2=&lt;&lt;use&gt;&gt;</panel_attributes><additional_attributes>10;10;10;20;60;20;60;110;180;110;180;310;130;310;130;340</additional_attributes></element><element><id>Relation</id><coordinates><x>611</x><y>117</y><w>260</w><h>247</h></coordinates><panel_attributes>lt=.&gt;
m2= &lt;&lt;use&gt;&gt;</panel_attributes><additional_attributes>10;10;10;30;60;30;60;140;150;140;150;170</additional_attributes></element><element><id>Relation</id><coordinates><x>689</x><y>845</y><w>39</w><h>91</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>10;50;10;10</additional_attributes></element><element><id>UMLClass</id><coordinates><x>637</x><y>819</y><w>130</w><h>39</h></coordinates><panel_attributes>halign=center
valign=center
lt=.
Alle Klassen</panel_attributes><additional_attributes></additional_attributes></element></diagram>
\ No newline at end of file
File added
File added
<diagram program="umletino" version="15.1"><zoom_level>10</zoom_level><help_text>Space for diagram notes</help_text><element><id>UMLClass</id><coordinates><x>468</x><y>100</y><w>140</w><h>80</h></coordinates><panel_attributes>&lt;&lt;struct&gt;&gt;
DmxChannel
--
value: unsigned char
isUsed: bool
</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>158</x><y>90</y><w>220</w><h>100</h></coordinates><panel_attributes>&lt;&lt;struct&gt;&gt;
PresetStoredInfromation
--
state: unsigned char
groupId: unsigned char
dmxChannels: DmxChannel[100]
</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>368</x><y>160</y><w>120</w><h>40</h></coordinates><panel_attributes>lt=-&gt;&gt;&gt;&gt;&gt;
m1=n
m2=1</panel_attributes><additional_attributes>100;10;10;10</additional_attributes></element><element><id>UMLClass</id><coordinates><x>78</x><y>220</y><w>340</w><h>210</h></coordinates><panel_attributes>Preset
--
- eepromAdress: int
- presetLed: PresetLed
--
+ Preset(eepromAdress: int, LedId: int)
+ loadPresetData(): void
+ setState(state: unsigned char): void
+ setChannelValue(channel: int, value: unsigned char): void
+ setGroupId(groupId: unsigned char): void
+ getGroupId(): unsigned char
+ getDmxChannel(): DmxChannel[]</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>258</x><y>180</y><w>30</w><h>60</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>10;10;10;40</additional_attributes></element><element><id>UMLClass</id><coordinates><x>298</x><y>470</y><w>440</w><h>200</h></coordinates><panel_attributes>PresetRepository
--
- presets: Preset[6]
- dmxController: DmxController
--
+ PresetRepository(eepromStartAdress: int, dmxController: DmxController)
+ activatePreset(presetId: int): void
+ deaktivatePreset(presetId: int): void
+ setPresetActive(presetId: int): void
+ setPresetDeactive(presetId: int): void
+ activateGroup(groupId: byte): void</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>838</x><y>470</y><w>350</w><h>70</h></coordinates><panel_attributes>DmxController
--
--
+ DmxController()
+ setChannelValue(channel: int, value: unsigned char): void</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>728</x><y>520</y><w>130</w><h>40</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-
m1=1
m2=1</panel_attributes><additional_attributes>10;10;110;10</additional_attributes></element><element><id>UMLClass</id><coordinates><x>678</x><y>90</y><w>240</w><h>90</h></coordinates><panel_attributes>main
--
+ presetRepository: PresetRepository
+ dmxController: DmxController
+ artNetController: ArtNetController
--
</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>908</x><y>120</y><w>280</w><h>370</h></coordinates><panel_attributes>lt=-&gt;&gt;&gt;&gt;&gt;
m1=1
m2=1</panel_attributes><additional_attributes>250;350;250;10;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>728</x><y>90</y><w>490</w><h>570</h></coordinates><panel_attributes>lt=-&gt;&gt;&gt;&gt;&gt;
m1=1
m2=1</panel_attributes><additional_attributes>10;540;470;540;470;10;190;10</additional_attributes></element><element><id>UMLClass</id><coordinates><x>758</x><y>230</y><w>360</w><h>180</h></coordinates><panel_attributes>ArtNetController
--
- presetRepository: PresetRepository
- dmxController: DmxController
--
+ ArtNetController(pR: PresetRepository, dC: DmxController)
+ sendPresetActivated(presetId: int): void
+ sendPresetDeactivated(presetId: int): void</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>908</x><y>150</y><w>230</w><h>100</h></coordinates><panel_attributes>lt=-&gt;&gt;&gt;&gt;&gt;
m1=1
m2=1</panel_attributes><additional_attributes>200;80;200;10;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>728</x><y>400</y><w>80</w><h>130</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-
m1=1
m2=1</panel_attributes><additional_attributes>50;10;50;100;10;100</additional_attributes></element><element><id>Relation</id><coordinates><x>798</x><y>400</y><w>60</w><h>130</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-
m1=1
m2=1</panel_attributes><additional_attributes>10;10;10;100;40;100</additional_attributes></element><element><id>Relation</id><coordinates><x>248</x><y>420</y><w>70</w><h>100</h></coordinates><panel_attributes>lt=-&gt;&gt;&gt;&gt;&gt;
m1=6
m2=1</panel_attributes><additional_attributes>10;10;10;70;50;70</additional_attributes></element><element><id>UMLClass</id><coordinates><x>498</x><y>230</y><w>240</w><h>110</h></coordinates><panel_attributes>PresetLed
--
- redPinOut: int
- greenPinOut: int
- bluePinOut: int
--
+ PresetLed(r: int, g: int, b: int )
+ setColor(r: bool, g: bool, b: bool): void</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>408</x><y>230</y><w>110</w><h>40</h></coordinates><panel_attributes>lt=-&gt;&gt;&gt;&gt;&gt;
m1=1
m2=1</panel_attributes><additional_attributes>90;10;10;10</additional_attributes></element></diagram>
\ No newline at end of file
File added
<diagram program="umletino" version="15.1"><zoom_level>12</zoom_level><element><id>UMLClass</id><coordinates><x>108</x><y>204</y><w>120</w><h>36</h></coordinates><panel_attributes>lt=..
config</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>684</x><y>336</y><w>144</w><h>36</h></coordinates><panel_attributes>ArtNetController</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>204</x><y>612</y><w>144</w><h>36</h></coordinates><panel_attributes>lt=..
DmxChannel
</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>180</x><y>504</y><w>192</w><h>36</h></coordinates><panel_attributes>lt=..
PresetStoredInformation
</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>264</x><y>432</y><w>96</w><h>36</h></coordinates><panel_attributes>Preset</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>180</x><y>336</y><w>144</w><h>36</h></coordinates><panel_attributes>PresetRepository</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>84</x><y>432</y><w>96</w><h>36</h></coordinates><panel_attributes>PresetLed</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>444</x><y>336</y><w>144</w><h>36</h></coordinates><panel_attributes>DmxController
</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>444</x><y>204</y><w>144</w><h>36</h></coordinates><panel_attributes>LightControlUnit</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>684</x><y>516</y><w>144</w><h>36</h></coordinates><panel_attributes>lt=..
ArtNetPackages
</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>72</x><y>168</y><w>792</w><h>108</h></coordinates><panel_attributes>lt=.
Hauptapplikation</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>684</x><y>444</y><w>120</w><h>36</h></coordinates><panel_attributes>lt=..
ArtCommands
</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>216</x><y>204</y><w>252</w><h>36</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;10;190;10</additional_attributes></element><element><id>Relation</id><coordinates><x>312</x><y>336</y><w>156</w><h>48</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-&gt;
m1=1
m2=1</panel_attributes><additional_attributes>10;10;110;10</additional_attributes></element><element><id>Relation</id><coordinates><x>240</x><y>216</y><w>228</w><h>144</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;&lt;-&gt;
m1=1
m2=1</panel_attributes><additional_attributes>170;10;10;10;10;100</additional_attributes></element><element><id>Relation</id><coordinates><x>576</x><y>216</y><w>216</w><h>144</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;&lt;-&gt;
m1=1
m2=1</panel_attributes><additional_attributes>10;10;150;10;150;100</additional_attributes></element><element><id>Relation</id><coordinates><x>504</x><y>228</y><w>48</w><h>132</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;&lt;-&gt;
m1=1
m2=1</panel_attributes><additional_attributes>10;10;10;90</additional_attributes></element><element><id>Relation</id><coordinates><x>576</x><y>336</y><w>132</w><h>48</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-&gt;
m1=1
m2=1</panel_attributes><additional_attributes>90;10;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>804</x><y>360</y><w>36</w><h>180</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;130;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>732</x><y>360</y><w>36</w><h>108</h></coordinates><panel_attributes>lt=&lt;-</panel_attributes><additional_attributes>10;70;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>312</x><y>360</y><w>420</w><h>84</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-&gt;
m1=1
m2=1</panel_attributes><additional_attributes>320;10;320;50;80;50;80;10;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>264</x><y>528</y><w>60</w><h>108</h></coordinates><panel_attributes>lt=&lt;-&gt;&gt;&gt;&gt;&gt;
m1=100
m2=1</panel_attributes><additional_attributes>10;70;10;10</additional_attributes></element><element><id>UMLClass</id><coordinates><x>636</x><y>288</y><w>228</w><h>396</h></coordinates><panel_attributes>lt=.
valign=bottom
halign=center
Art-Net</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>396</x><y>288</y><w>228</w><h>396</h></coordinates><panel_attributes>lt=.
valign=bottom
halign=center
DMX</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>72</x><y>288</y><w>312</w><h>396</h></coordinates><panel_attributes>lt=.
valign=bottom
halign=center
Presets</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>300</x><y>456</y><w>36</w><h>72</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>10;40;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>168</x><y>444</y><w>120</w><h>48</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;&lt;-&gt;
m1=1
m2=1</panel_attributes><additional_attributes>80;10;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>240</x><y>360</y><w>108</w><h>96</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;&lt;-&gt;
m1=1
m2=6</panel_attributes><additional_attributes>10;10;10;40;60;40;60;60</additional_attributes></element></diagram>
\ No newline at end of file
- kontinuierliches Senden der DMX-Werte
- aktivieren und deaktivieren von Presets
-> Prüfen, ob andere Gruppen Teilaktiv sind
- Wenn eine Gruppe aktiv gesetzt wird, dann müssen alle Presets der Gruppe auf Aktiv gehen
- Nur die Schnellauswahltaste, nicht den Preset selber aktivieren
- Bei jeder Änderung eines Channels muss getestet werden, ob eine Gruppe auf Teilaktiv gestellt wird
- Alle Presetdaten müssen gespeichert werden, bei jeder Änderung.
Event:
Preset aktivieren:
-> Preset aktivieren
-> setzten der LED
-> setzten des Prest-Status
-> Preset Daten speichern
-> setzen der DMX-Werte
-> Andere Presets der Gruppe deaktivieren.
-> Presets anderer Gruppen auf State prüfen
-> setzten des Prest-Status
-> Preset Daten speichern
Preset deaktivieren:
-> Preset deaktivieren
-> setzten der LED
-> setzten des Prest-Status
-> Preset Daten speichern
-> setzen der DMX-Werte
-> Andere Presets der Gruppe deaktivieren.
-> Presets anderer Gruppen auf State prüfen
-> setzten des Prest-Status
-> Preset Daten speichern
Preset leeren:
-> Preset deaktivieren
-> Preset leeren
Setzen eines Preset Wertes:
-> Presetwert im Preset setzten
-> Preset speichern
Falls Preset aktiv
-> DMX-Wert senden
-> Andere Presets prüfen, ob diese nun aktiv sind.
Gruppe für Preset setzen
-> Preset Gruppe setzten
Falls aktiv:
-> Preset der anderen Gruppen deaktivieren
Gruppe aktivieren
-> Alle Presets der Gruppe auf Part activ setzten
-> Werte Speichern
Gruppe deaktivieren
-> Alle Presets der Gruppe deaktivieren
-> Werte Speichern
Status abfragen
->
UDP Paket Länge
ArtPoll (Empfang A; Senden J)
min 14
max 22
ArtPollReply (Empfang J; Senden A)
min 207
max 236
ArtCommand (Empfang A,J; Senden A,J)
min 16
max 528
ArtDataRequest (Empfang A; Senden J)
min/max 40
ArtDataReply (Empfang J; Senden A)
min 20
max 532
ArtDmx (Empfang A; Senden J)
min 20
max 530
Empfangen A: max 530
Empfangen J: max 532
Senden A: max 532
Senden J: max 530
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="ressourcen"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/javafx-jre-16">
<attributes>
<attribute name="module" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="lib" path="C:/Program Files/Java/javafx-sdk-16/lib/gson-2.10.1.jar"/>
<classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/JavaFX16"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jdk-19"/>
<classpathentry kind="output" path="bin"/>
</classpath>
/bin/
src/lightControlSoftware/ressourcen/images/Delete.png

3.25 KiB

src/lightControlSoftware/ressourcen/images/Edit.png

2.95 KiB

src/lightControlSoftware/ressourcen/images/Icon Test.png

7.06 KiB

src/lightControlSoftware/ressourcen/images/Kiwi_Logo.png

21.6 KiB

File added
File added
File added
.root {
-fx-background-color: white;
}
BorderPane {
-fx-background-color: white;
}
ScrollPane {
-fx-background-color: white;
}
SplitPane {
-fx-background-color: white;
}
FlowPane {
-fx-background-color: white;
}
Button {
-fx-background-radius: 25;
}
.list-cell {
-fx-background-color: transparent;
}
.white-background {
-fx-background-color: white;
}
.section {
-fx-border-color: gray;
-fx-border-width: 2px;
-fx-border-radius: 5px;
-fx-padding: 10 5 5 5;
}
.section-headline {
-fx-background-color: white;
-fx-padding: 0 5 0 5;
}
.list-item {
-fx-border-color: black;
-fx-border-width: 1px;
-fx-border-radius: 5px;
-fx-background-color: lightgray;
-fx-background-radius: 5px;
}
.item-diselected {
-fx-border-color: black;
-fx-border-width: 1px;
-fx-border-radius: 5px;
}
.item-selected {
-fx-border-color: orange;
-fx-border-width: 2px;
-fx-border-radius: 5px;
}
.lable-box {
-fx-border-color: black;
-fx-border-width: 1px;
-fx-border-radius: 5px;
}
.footer {
-fx-background-color: lightgray
}
.text-color-black {
-fx-text-fill: black
}
.combo-box .list-cell
{
-fx-background: white;
-fx-text-fill: black;
}
.combo-box .list-view .list-cell:focused {
-fx-background-color : orange;
-fx-text-fill: white;
}
.combo-box .list-view .list-cell:hover {
-fx-background-color : orange;
-fx-text-fill: white;
}
\ No newline at end of file
package appliaction;
import javafx.application.Application;
import javafx.stage.Stage;
import model.KiwiModelHandler;
import view.KiwiViewHandler;
import viewModel.KiwiViewModelHandler;
public class MainKiwi extends Application{
private KiwiModelHandler modelHandler;
private KiwiViewModelHandler viewModelHandler;
private KiwiViewHandler viewHandler;
@Override
public void start(Stage primaryStage) throws Exception {
this.modelHandler = new KiwiModelHandler();
this.modelHandler.testModels();
this.viewModelHandler = new KiwiViewModelHandler(modelHandler);
this.viewHandler = new KiwiViewHandler(primaryStage, viewModelHandler);
viewHandler.start();
}
public static void main(String[] args) {
launch(args);
}
@Override
public void stop(){
System.exit(0);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment