]> gerrit.simantics Code Review - simantics/3d.git/blob - org.jcae.opencascade/src-java/org/jcae/opencascade/jni/TopoDS_Shape.java
83a091d37091f63fa1f83ce9030329a09782c9c7
[simantics/3d.git] / org.jcae.opencascade / src-java / org / jcae / opencascade / jni / TopoDS_Shape.java
1 /* ----------------------------------------------------------------------------\r
2  * This file was automatically generated by SWIG (http://www.swig.org).\r
3  * Version 2.0.4\r
4  *\r
5  * Do not make changes to this file unless you know what you are doing--modify\r
6  * the SWIG interface file instead.\r
7  * ----------------------------------------------------------------------------- */\r
8 \r
9 package org.jcae.opencascade.jni;\r
10 \r
11 public class TopoDS_Shape {\r
12   private long swigCPtr;\r
13   protected boolean swigCMemOwn;\r
14 \r
15   public TopoDS_Shape(long cPtr, boolean cMemoryOwn) {\r
16     swigCMemOwn = cMemoryOwn;\r
17     swigCPtr = cPtr;\r
18   }\r
19 \r
20   public static long getCPtr(TopoDS_Shape obj) {\r
21     return (obj == null) ? 0 : obj.swigCPtr;\r
22   }\r
23 \r
24   protected void finalize() {\r
25     delete();\r
26   }\r
27 \r
28   public synchronized void delete() {\r
29     if (swigCPtr != 0) {\r
30       if (swigCMemOwn) {\r
31         swigCMemOwn = false;\r
32         OccJavaJNI.delete_TopoDS_Shape(swigCPtr);\r
33       }\r
34       swigCPtr = 0;\r
35     }\r
36   }\r
37 \r
38         private long myTShape;\r
39         protected static TopoDS_Shape downcast(TopoDS_Shape in)\r
40         {\r
41                 TopoDS_Shape toReturn = create(getCPtr(in));\r
42                 in.swigCMemOwn=false;\r
43                 return toReturn;\r
44         }\r
45 \r
46         protected static TopoDS_Shape create(long in)\r
47         {\r
48                 if(in==0)\r
49                         return null;\r
50                 //second argument is not use in swig\r
51                 TopAbs_ShapeEnum type = TopAbs_ShapeEnum.swigToEnum(OccJavaJNI.TopoDS_Shape_shapeType(in, null));\r
52                 return create(in, type);\r
53         }\r
54 \r
55         protected static TopoDS_Shape create(long in, TopAbs_ShapeEnum type)\r
56         {\r
57                 TopoDS_Shape toReturn=null;\r
58                 if(in==0)\r
59                         return null;\r
60                 switch(type)\r
61                 {\r
62                         case COMPOUND:\r
63                                 toReturn=new TopoDS_Compound(in, true);\r
64                                 break;\r
65                         case COMPSOLID:\r
66                                 toReturn=new TopoDS_CompSolid(in, true);\r
67                                 break;\r
68                         case SOLID:\r
69                                 toReturn=new TopoDS_Solid(in, true);\r
70                                 break;\r
71                         case SHELL:\r
72                                 toReturn=new TopoDS_Shell(in, true);\r
73                                 break;\r
74                         case FACE:\r
75                                 toReturn=new TopoDS_Face(in, true);\r
76                                 break;\r
77                         case WIRE:\r
78                                 toReturn=new TopoDS_Wire(in, true);\r
79                                 break;\r
80                         case EDGE:\r
81                                 toReturn=new TopoDS_Edge(in, true);\r
82                                 break;\r
83                         case VERTEX:\r
84                                 toReturn=new TopoDS_Vertex(in, true);\r
85                                 break;\r
86                 }\r
87                 toReturn.myTShape=toReturn.getTShape();\r
88                 return toReturn;\r
89     }\r
90     public boolean isSame(TopoDS_Shape s)\r
91     {\r
92         /*if(myTShape==0)\r
93                         myTShape=getTShape();\r
94                 \r
95                 if(s.myTShape==0)\r
96                         s.myTShape=s.getTShape();\r
97                 \r
98                 if(myTShape==s.myTShape)\r
99         {\r
100             return nativeIsSame(s);\r
101         }\r
102         else return false;*/\r
103                 return nativeIsSame(s);\r
104     }\r
105         \r
106     /**\r
107      * Alias on the isSame method for an easy use of this class in java\r
108      * collections\r
109      */\r
110     public boolean equals(Object o)\r
111     {\r
112         if (o instanceof TopoDS_Shape)\r
113         {\r
114             return isSame((TopoDS_Shape)o);\r
115         }\r
116         else return false;\r
117     }\r
118 \r
119         public int hashCode()\r
120         {\r
121                 return hashCode(Integer.MAX_VALUE);\r
122         }\r
123 \r
124         protected static TopoDS_Shape[] cArrayWrap(long[] ptrs)\r
125         {\r
126                 TopoDS_Shape[] toReturn = new TopoDS_Shape[ptrs.length/2];\r
127                 long ptr;\r
128                 int type;\r
129                 for (int i=0, j=0; i<toReturn.length; i++)\r
130                 {  \r
131                         ptr = ptrs[j++];\r
132                         type = (int)ptrs[j++];\r
133                         toReturn[i] = create(ptr, TopAbs_ShapeEnum.swigToEnum(type));\r
134                 }\r
135                 return toReturn;\r
136         }\r
137 \r
138         protected static long[] cArrayUnwrap(TopoDS_Shape[] arrayWrapper)\r
139         {\r
140                 long[] cArray = new long[arrayWrapper.length];\r
141                 for (int i=0; i<arrayWrapper.length; i++)\r
142                 cArray[i] = TopoDS_Shape.getCPtr(arrayWrapper[i]);\r
143                 return cArray;\r
144         }\r
145 \r
146   public TopAbs_ShapeEnum shapeType() {\r
147     return TopAbs_ShapeEnum.swigToEnum(OccJavaJNI.TopoDS_Shape_shapeType(swigCPtr, this));\r
148   }\r
149 \r
150   public boolean nativeIsSame(TopoDS_Shape other) {\r
151         return OccJavaJNI.TopoDS_Shape_nativeIsSame(swigCPtr, this, TopoDS_Shape.getCPtr(other), other);\r
152 }\r
153 \r
154   public TopAbs_Orientation orientation() {\r
155     return TopAbs_Orientation.swigToEnum(OccJavaJNI.TopoDS_Shape_orientation(swigCPtr, this));\r
156   }\r
157 \r
158   public void reverse() {\r
159     OccJavaJNI.TopoDS_Shape_reverse(swigCPtr, this);\r
160   }\r
161 \r
162   public TopoDS_Shape reversed() {\r
163     long cPtr = OccJavaJNI.TopoDS_Shape_reversed(swigCPtr, this);\r
164     return (TopoDS_Shape)TopoDS_Shape.create(cPtr);\r
165 }\r
166 \r
167   public int hashCode(int Upper) {\r
168     return OccJavaJNI.TopoDS_Shape_hashCode(swigCPtr, this, Upper);\r
169   }\r
170 \r
171   public boolean free() {\r
172         return OccJavaJNI.TopoDS_Shape_free__SWIG_0(swigCPtr, this);\r
173 }\r
174 \r
175   public void free(boolean F) {\r
176     OccJavaJNI.TopoDS_Shape_free__SWIG_1(swigCPtr, this, F);\r
177   }\r
178 \r
179   public long getTShape() {\r
180     return OccJavaJNI.TopoDS_Shape_getTShape(swigCPtr, this);\r
181   }\r
182 \r
183   public TopoDS_Shape() {\r
184     this(OccJavaJNI.new_TopoDS_Shape(), true);\r
185   }\r
186 \r
187 }\r