testing-framework / plugin_blender / __init__.py @ 17a68f48
History | View | Annotate | Download (4.554 KB)
1 | 1fdee286 | Jonas Diekmann | bl_info = { |
---|---|---|---|
2 | "author": "Jonas Diekmann", |
||
3 | "name": "Marker Tracker Plugin", |
||
4 | "description": "Tools for BA-Thesis", |
||
5 | "warning": "", |
||
6 | "version": (0, 11, 3), |
||
7 | "blender": (2, 72, 0), |
||
8 | "support": "TESTING", |
||
9 | "category": "Add Mesh" |
||
10 | } |
||
11 | # Dies ist die Hauptdatei des Plugins
|
||
12 | # Sie wird geladen, wenn das Plugin geladen wird.
|
||
13 | # Normalerweise geschieht dies beim Start von Blender
|
||
14 | # Es ist aber auch möglich diese datei direkt zu laden.
|
||
15 | # Aufgabe dieser Datei ist es alle anderen teile des
|
||
16 | # Plugins nachzuladen.
|
||
17 | ### Der untestehende Code (bis ###) basiert auf [3].
|
||
18 | |||
19 | # Lädt die Dateien neu, wenn das Plugin aufgefrischt werden soll.
|
||
20 | if "bpy" in locals(): |
||
21 | import imp |
||
22 | if "view" in locals(): |
||
23 | imp.reload(view) |
||
24 | else:
|
||
25 | print("Datei view.py fehlt!");
|
||
26 | if "adjust" in locals(): |
||
27 | imp.reload(adjust) |
||
28 | else:
|
||
29 | print("Datei adjust.py fehlt!");
|
||
30 | if "controller" in locals(): |
||
31 | imp.reload(controller) |
||
32 | else:
|
||
33 | print("Datei controller.py fehlt!");
|
||
34 | if "model" in locals(): |
||
35 | imp.reload(model) |
||
36 | else:
|
||
37 | print("Datei model.py fehlt!");
|
||
38 | if "switch_texture" in locals(): |
||
39 | imp.reload(switch_texture) |
||
40 | else:
|
||
41 | print("Datei switch_texture.py fehlt!");
|
||
42 | if "tools" in locals(): |
||
43 | imp.reload(tools) |
||
44 | else:
|
||
45 | print("Datei tools.py fehlt!");
|
||
46 | print("Pakete aufgefrischt")
|
||
47 | else:
|
||
48 | # Importiert die übrigen Module, wenn das Plugin (oder eigentlich bpy)
|
||
49 | # noch nicht geladen war.
|
||
50 | from .view import GraphischeOberflaeche |
||
51 | from .adjust import KameraJustieren, FormatEinstellen, EinheitenEinstellen |
||
52 | from .controller import PositionenAusgeben, MarkerHinzufuegen, MarkerRandomisieren #,EulerwinkelAusgeben |
||
53 | from .model import Plugineigenschaften |
||
54 | from .switch import WechsleBibliothek, WechsleZuBART, WechsleZuALVAR |
||
55 | from .tools import Import1, Import2 |
||
56 | print("Pakete importiert")
|
||
57 | ###
|
||
58 | |||
59 | import bpy |
||
60 | |||
61 | # Registriert alle Klassen des Plugins
|
||
62 | def register(): |
||
63 | bpy.utils.register_class(Plugineigenschaften) |
||
64 | bpy.types.Scene.markerRender = bpy.props.PointerProperty(type=Plugineigenschaften) |
||
65 | bpy.types.Object.marker_id = bpy.props.IntProperty(default=-1,min=-1) |
||
66 | bpy.types.ImageTexture.library = bpy.props.StringProperty(name="library",default='BART',maxlen=100) |
||
67 | bpy.types.ImageTexture.marker_id = bpy.props.IntProperty(default=-1,min=-1) |
||
68 | bpy.utils.register_class(PositionenAusgeben) |
||
69 | bpy.utils.register_class(MarkerHinzufuegen) |
||
70 | #bpy.utils.register_class(EulerwinkelAusgeben)
|
||
71 | bpy.utils.register_class(MarkerRandomisieren) |
||
72 | bpy.utils.register_class(WechsleBibliothek) |
||
73 | bpy.utils.register_class(WechsleZuBART) |
||
74 | bpy.utils.register_class(WechsleZuALVAR) |
||
75 | bpy.utils.register_class(EinheitenEinstellen) |
||
76 | bpy.utils.register_class(KameraJustieren) |
||
77 | bpy.utils.register_class(FormatEinstellen) |
||
78 | bpy.utils.register_class(GraphischeOberflaeche) |
||
79 | bpy.utils.register_class(Import1) |
||
80 | bpy.utils.register_class(Import2) |
||
81 | |||
82 | # Macht die Registrierung aller Klassen des Plugins rückgängig.
|
||
83 | def unregister(): |
||
84 | bpy.utils.unregister_class(Import2) |
||
85 | bpy.utils.unregister_class(Import1) |
||
86 | bpy.utils.unregister_class(GraphischeOberflaeche) |
||
87 | bpy.utils.unregister_class(MarkerRandomisieren) |
||
88 | bpy.utils.unregister_class(FormatEinstellen) |
||
89 | bpy.utils.unregister_class(KameraJustieren) |
||
90 | bpy.utils.unregister_class(EinheitenEinstellen) |
||
91 | bpy.utils.unregister_class(WechsleZuALVAR) |
||
92 | bpy.utils.unregister_class(WechsleZuBART) |
||
93 | bpy.utils.unregister_class(WechsleBibliothek) |
||
94 | #bpy.utils.unregister_class(EulerwinkelAusgeben)
|
||
95 | bpy.utils.unregister_class(MarkerHinzufuegen) |
||
96 | bpy.utils.unregister_class(PositionenAusgeben) |
||
97 | bpy.utils.unregister_class(Plugineigenschaften) |
||
98 | |||
99 | # Dies ist der Einsprungspunkt, falls das Skript über
|
||
100 | # die entsprechende Schaltfläche in Blender ausgeführt wird.
|
||
101 | if __name__ == "__main__": |
||
102 | register() |
||
103 | |||
104 | # Quellen:
|
||
105 | # 0 API: http://www.blender.org/api/blender_python_api_2_72_release
|
||
106 | # 1 PYTHON kurz & gut:
|
||
107 | # 2 Quickstart: http://www.blender.org/api/blender_python_api_2_72_release/info_quickstart.html
|
||
108 | # 3 Multi-file packages: http://wiki.blender.org/index.php/Dev:2.5/Py/Scripts/Cookbook/Code_snippets/Multi-File_packages
|
||
109 | #
|
||
110 | # Tipp: Der Tooltip der meisten Felder nennt den Pfad der Eigenschaft.
|
||
111 | # Operatoren werden zudem im Infofenster protokolliert.
|
||
112 | # Dadurch kann man manchmal die gewünschten Aktionen über die GUI durchführen und die Befehle kopieren. (vgl. auch http://www.blender.org/api/blender_python_api_2_72_release/info_api_reference.html#copy-data-path)
|
||
113 |