2 using System.Collections;
25 private LineRenderer RectXMin;
26 private LineRenderer RectXMax;
27 private LineRenderer RectYMin;
28 private LineRenderer RectYMax;
32 private bool listeningToEvents =
false;
39 private DisplayMode displayMode = DisplayMode.OFF;
55 RectXMin = gameObject.transform.Find (
"RectXMin").GetComponent<LineRenderer> ();
56 RectXMax = gameObject.transform.Find (
"RectXMax").GetComponent<LineRenderer> ();
57 RectYMin = gameObject.transform.Find (
"RectYMin").GetComponent<LineRenderer> ();
58 RectYMax = gameObject.transform.Find (
"RectYMax").GetComponent<LineRenderer> ();
60 if (!listeningToEvents) {
61 PatientEventSystem.startListening (PatientEventSystem.Event.DICOM_NewLoadedSlice, eventNewDICOM);
62 PatientEventSystem.startListening (PatientEventSystem.Event.PATIENT_Closed, patientClosed);
63 listeningToEvents =
true;
70 PatientEventSystem.stopListening( PatientEventSystem.Event.DICOM_NewLoadedSlice, eventNewDICOM );
71 PatientEventSystem.stopListening( PatientEventSystem.Event.PATIENT_Closed, patientClosed );
74 void eventNewDICOM(
object obj = null )
76 if (displayMode == DisplayMode.OFF) {
77 gameObject.SetActive (
false);
81 DICOM dicom = DICOMLoader.instance.currentDICOM;
159 DICOM2D dicom2D = dicom as DICOM2D;
162 Vector3 p1 = dicom2D.transformPixelToPatientPos (Vector2.zero);
163 Vector3 p2 = dicom2D.transformPixelToPatientPos (
new Vector2 (dicom2D.
origTexWidth, 0f) );
165 Vector3 p4 = dicom2D.transformPixelToPatientPos (
new Vector2 (0, dicom2D.
origTexHeight) );
166 RectXMin.SetPosition (0, p1);
167 RectXMin.SetPosition (1, p4);
168 RectXMax.SetPosition (0, p2);
169 RectXMax.SetPosition (1, p3);
170 RectYMin.SetPosition (0, p1);
171 RectYMin.SetPosition (1, p2);
172 RectYMax.SetPosition (0, p3);
173 RectYMax.SetPosition (1, p4);
175 RectXMin.enabled =
true;
176 RectXMax.enabled =
true;
177 RectYMin.enabled =
true;
178 RectYMax.enabled =
true;
182 RectXMin.enabled =
false;
183 RectXMax.enabled =
false;
184 RectYMin.enabled =
false;
185 RectYMax.enabled =
false;
188 gameObject.SetActive (
true);
190 gameObject.SetActive (
false);
194 public void patientClosed(
object obj = null )
196 gameObject.SetActive (
false);
205 Debug.Log (
"Toggle " + t);
207 displayMode = DisplayMode.SLICE;
209 displayMode = DisplayMode.OFF;