Points&Forces (core)
Software tools facilitating the task of surveying architecture
a_geom_libTCL8_wrap.cxx
Go to the documentation of this file.
1 /* ----------------------------------------------------------------------------
2  * This file was automatically generated by SWIG (http://www.swig.org).
3  * Version 4.0.2
4  *
5  * This file is not intended to be easily readable and contains a number of
6  * coding conventions designed to improve portability and efficiency. Do not make
7  * changes to this file unless you know what you are doing--modify the SWIG
8  * interface file instead.
9  * ----------------------------------------------------------------------------- */
10 
11 
12 #ifndef SWIGTCL
13 #define SWIGTCL
14 #endif
15 
16 
17 #ifdef __cplusplus
18 /* SwigValueWrapper is described in swig.swg */
19 template<typename T> class SwigValueWrapper {
20  struct SwigMovePointer {
21  T *ptr;
22  SwigMovePointer(T *p) : ptr(p) { }
23  ~SwigMovePointer() { delete ptr; }
24  SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = rhs.ptr; rhs.ptr = 0; return *this; }
25  } pointer;
26  SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
27  SwigValueWrapper(const SwigValueWrapper<T>& rhs);
28 public:
29  SwigValueWrapper() : pointer(0) { }
30  SwigValueWrapper& operator=(const T& t) { SwigMovePointer tmp(new T(t)); pointer = tmp; return *this; }
31  operator T&() const { return *pointer.ptr; }
32  T *operator&() { return pointer.ptr; }
33 };
34 
35 template <typename T> T SwigValueInit() {
36  return T();
37 }
38 #endif
39 
40 /* -----------------------------------------------------------------------------
41  * This section contains generic SWIG labels for method/variable
42  * declarations/attributes, and other compiler dependent labels.
43  * ----------------------------------------------------------------------------- */
44 
45 /* template workaround for compilers that cannot correctly implement the C++ standard */
46 #ifndef SWIGTEMPLATEDISAMBIGUATOR
47 # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
48 # define SWIGTEMPLATEDISAMBIGUATOR template
49 # elif defined(__HP_aCC)
50 /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
51 /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
52 # define SWIGTEMPLATEDISAMBIGUATOR template
53 # else
54 # define SWIGTEMPLATEDISAMBIGUATOR
55 # endif
56 #endif
57 
58 /* inline attribute */
59 #ifndef SWIGINLINE
60 # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
61 # define SWIGINLINE inline
62 # else
63 # define SWIGINLINE
64 # endif
65 #endif
66 
67 /* attribute recognised by some compilers to avoid 'unused' warnings */
68 #ifndef SWIGUNUSED
69 # if defined(__GNUC__)
70 # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
71 # define SWIGUNUSED __attribute__ ((__unused__))
72 # else
73 # define SWIGUNUSED
74 # endif
75 # elif defined(__ICC)
76 # define SWIGUNUSED __attribute__ ((__unused__))
77 # else
78 # define SWIGUNUSED
79 # endif
80 #endif
81 
82 #ifndef SWIG_MSC_UNSUPPRESS_4505
83 # if defined(_MSC_VER)
84 # pragma warning(disable : 4505) /* unreferenced local function has been removed */
85 # endif
86 #endif
87 
88 #ifndef SWIGUNUSEDPARM
89 # ifdef __cplusplus
90 # define SWIGUNUSEDPARM(p)
91 # else
92 # define SWIGUNUSEDPARM(p) p SWIGUNUSED
93 # endif
94 #endif
95 
96 /* internal SWIG method */
97 #ifndef SWIGINTERN
98 # define SWIGINTERN static SWIGUNUSED
99 #endif
100 
101 /* internal inline SWIG method */
102 #ifndef SWIGINTERNINLINE
103 # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
104 #endif
105 
106 /* exporting methods */
107 #if defined(__GNUC__)
108 # if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
109 # ifndef GCC_HASCLASSVISIBILITY
110 # define GCC_HASCLASSVISIBILITY
111 # endif
112 # endif
113 #endif
114 
115 #ifndef SWIGEXPORT
116 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
117 # if defined(STATIC_LINKED)
118 # define SWIGEXPORT
119 # else
120 # define SWIGEXPORT __declspec(dllexport)
121 # endif
122 # else
123 # if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
124 # define SWIGEXPORT __attribute__ ((visibility("default")))
125 # else
126 # define SWIGEXPORT
127 # endif
128 # endif
129 #endif
130 
131 /* calling conventions for Windows */
132 #ifndef SWIGSTDCALL
133 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
134 # define SWIGSTDCALL __stdcall
135 # else
136 # define SWIGSTDCALL
137 # endif
138 #endif
139 
140 /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
141 #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
142 # define _CRT_SECURE_NO_DEPRECATE
143 #endif
144 
145 /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
146 #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
147 # define _SCL_SECURE_NO_DEPRECATE
148 #endif
149 
150 /* Deal with Apple's deprecated 'AssertMacros.h' from Carbon-framework */
151 #if defined(__APPLE__) && !defined(__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES)
152 # define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0
153 #endif
154 
155 /* Intel's compiler complains if a variable which was never initialised is
156  * cast to void, which is a common idiom which we use to indicate that we
157  * are aware a variable isn't used. So we just silence that warning.
158  * See: https://github.com/swig/swig/issues/192 for more discussion.
159  */
160 #ifdef __INTEL_COMPILER
161 # pragma warning disable 592
162 #endif
163 
164 
165 #include <stdio.h>
166 #include <tcl.h>
167 #include <errno.h>
168 #include <stdlib.h>
169 #include <stdarg.h>
170 #include <ctype.h>
171 
172 /* -----------------------------------------------------------------------------
173  * swigrun.swg
174  *
175  * This file contains generic C API SWIG runtime support for pointer
176  * type checking.
177  * ----------------------------------------------------------------------------- */
178 
179 /* This should only be incremented when either the layout of swig_type_info changes,
180  or for whatever reason, the runtime changes incompatibly */
181 #define SWIG_RUNTIME_VERSION "4"
182 
183 /* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
184 #ifdef SWIG_TYPE_TABLE
185 # define SWIG_QUOTE_STRING(x) #x
186 # define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
187 # define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
188 #else
189 # define SWIG_TYPE_TABLE_NAME
190 #endif
191 
192 /*
193  You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
194  creating a static or dynamic library from the SWIG runtime code.
195  In 99.9% of the cases, SWIG just needs to declare them as 'static'.
196 
197  But only do this if strictly necessary, ie, if you have problems
198  with your compiler or suchlike.
199 */
200 
201 #ifndef SWIGRUNTIME
202 # define SWIGRUNTIME SWIGINTERN
203 #endif
204 
205 #ifndef SWIGRUNTIMEINLINE
206 # define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
207 #endif
208 
209 /* Generic buffer size */
210 #ifndef SWIG_BUFFER_SIZE
211 # define SWIG_BUFFER_SIZE 1024
212 #endif
213 
214 /* Flags for pointer conversions */
215 #define SWIG_POINTER_DISOWN 0x1
216 #define SWIG_CAST_NEW_MEMORY 0x2
217 #define SWIG_POINTER_NO_NULL 0x4
218 
219 /* Flags for new pointer objects */
220 #define SWIG_POINTER_OWN 0x1
221 
222 
223 /*
224  Flags/methods for returning states.
225 
226  The SWIG conversion methods, as ConvertPtr, return an integer
227  that tells if the conversion was successful or not. And if not,
228  an error code can be returned (see swigerrors.swg for the codes).
229 
230  Use the following macros/flags to set or process the returning
231  states.
232 
233  In old versions of SWIG, code such as the following was usually written:
234 
235  if (SWIG_ConvertPtr(obj,vptr,ty.flags) != -1) {
236  // success code
237  } else {
238  //fail code
239  }
240 
241  Now you can be more explicit:
242 
243  int res = SWIG_ConvertPtr(obj,vptr,ty.flags);
244  if (SWIG_IsOK(res)) {
245  // success code
246  } else {
247  // fail code
248  }
249 
250  which is the same really, but now you can also do
251 
252  Type *ptr;
253  int res = SWIG_ConvertPtr(obj,(void **)(&ptr),ty.flags);
254  if (SWIG_IsOK(res)) {
255  // success code
256  if (SWIG_IsNewObj(res) {
257  ...
258  delete *ptr;
259  } else {
260  ...
261  }
262  } else {
263  // fail code
264  }
265 
266  I.e., now SWIG_ConvertPtr can return new objects and you can
267  identify the case and take care of the deallocation. Of course that
268  also requires SWIG_ConvertPtr to return new result values, such as
269 
270  int SWIG_ConvertPtr(obj, ptr,...) {
271  if (<obj is ok>) {
272  if (<need new object>) {
273  *ptr = <ptr to new allocated object>;
274  return SWIG_NEWOBJ;
275  } else {
276  *ptr = <ptr to old object>;
277  return SWIG_OLDOBJ;
278  }
279  } else {
280  return SWIG_BADOBJ;
281  }
282  }
283 
284  Of course, returning the plain '0(success)/-1(fail)' still works, but you can be
285  more explicit by returning SWIG_BADOBJ, SWIG_ERROR or any of the
286  SWIG errors code.
287 
288  Finally, if the SWIG_CASTRANK_MODE is enabled, the result code
289  allows to return the 'cast rank', for example, if you have this
290 
291  int food(double)
292  int fooi(int);
293 
294  and you call
295 
296  food(1) // cast rank '1' (1 -> 1.0)
297  fooi(1) // cast rank '0'
298 
299  just use the SWIG_AddCast()/SWIG_CheckState()
300 */
301 
302 #define SWIG_OK (0)
303 #define SWIG_ERROR (-1)
304 #define SWIG_IsOK(r) (r >= 0)
305 #define SWIG_ArgError(r) ((r != SWIG_ERROR) ? r : SWIG_TypeError)
306 
307 /* The CastRankLimit says how many bits are used for the cast rank */
308 #define SWIG_CASTRANKLIMIT (1 << 8)
309 /* The NewMask denotes the object was created (using new/malloc) */
310 #define SWIG_NEWOBJMASK (SWIG_CASTRANKLIMIT << 1)
311 /* The TmpMask is for in/out typemaps that use temporal objects */
312 #define SWIG_TMPOBJMASK (SWIG_NEWOBJMASK << 1)
313 /* Simple returning values */
314 #define SWIG_BADOBJ (SWIG_ERROR)
315 #define SWIG_OLDOBJ (SWIG_OK)
316 #define SWIG_NEWOBJ (SWIG_OK | SWIG_NEWOBJMASK)
317 #define SWIG_TMPOBJ (SWIG_OK | SWIG_TMPOBJMASK)
318 /* Check, add and del mask methods */
319 #define SWIG_AddNewMask(r) (SWIG_IsOK(r) ? (r | SWIG_NEWOBJMASK) : r)
320 #define SWIG_DelNewMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_NEWOBJMASK) : r)
321 #define SWIG_IsNewObj(r) (SWIG_IsOK(r) && (r & SWIG_NEWOBJMASK))
322 #define SWIG_AddTmpMask(r) (SWIG_IsOK(r) ? (r | SWIG_TMPOBJMASK) : r)
323 #define SWIG_DelTmpMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_TMPOBJMASK) : r)
324 #define SWIG_IsTmpObj(r) (SWIG_IsOK(r) && (r & SWIG_TMPOBJMASK))
325 
326 /* Cast-Rank Mode */
327 #if defined(SWIG_CASTRANK_MODE)
328 # ifndef SWIG_TypeRank
329 # define SWIG_TypeRank unsigned long
330 # endif
331 # ifndef SWIG_MAXCASTRANK /* Default cast allowed */
332 # define SWIG_MAXCASTRANK (2)
333 # endif
334 # define SWIG_CASTRANKMASK ((SWIG_CASTRANKLIMIT) -1)
335 # define SWIG_CastRank(r) (r & SWIG_CASTRANKMASK)
336 SWIGINTERNINLINE int SWIG_AddCast(int r) {
337  return SWIG_IsOK(r) ? ((SWIG_CastRank(r) < SWIG_MAXCASTRANK) ? (r + 1) : SWIG_ERROR) : r;
338 }
340  return SWIG_IsOK(r) ? SWIG_CastRank(r) + 1 : 0;
341 }
342 #else /* no cast-rank mode */
343 # define SWIG_AddCast(r) (r)
344 # define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0)
345 #endif
346 
347 
348 #include <string.h>
349 
350 #ifdef __cplusplus
351 extern "C" {
352 #endif
353 
354 typedef void *(*swig_converter_func)(void *, int *);
355 typedef struct swig_type_info *(*swig_dycast_func)(void **);
356 
357 /* Structure to store information on one type */
358 typedef struct swig_type_info {
359  const char *name; /* mangled name of this type */
360  const char *str; /* human readable name of this type */
361  swig_dycast_func dcast; /* dynamic cast function down a hierarchy */
362  struct swig_cast_info *cast; /* linked list of types that can cast into this type */
363  void *clientdata; /* language specific type data */
364  int owndata; /* flag if the structure owns the clientdata */
366 
367 /* Structure to store a type and conversion function used for casting */
368 typedef struct swig_cast_info {
369  swig_type_info *type; /* pointer to type that is equivalent to this type */
370  swig_converter_func converter; /* function to cast the void pointers */
371  struct swig_cast_info *next; /* pointer to next cast in linked list */
372  struct swig_cast_info *prev; /* pointer to the previous cast */
374 
375 /* Structure used to store module information
376  * Each module generates one structure like this, and the runtime collects
377  * all of these structures and stores them in a circularly linked list.*/
378 typedef struct swig_module_info {
379  swig_type_info **types; /* Array of pointers to swig_type_info structures that are in this module */
380  size_t size; /* Number of types in this module */
381  struct swig_module_info *next; /* Pointer to next element in circularly linked list */
382  swig_type_info **type_initial; /* Array of initially generated type structures */
383  swig_cast_info **cast_initial; /* Array of initially generated casting structures */
384  void *clientdata; /* Language specific module data */
386 
387 /*
388  Compare two type names skipping the space characters, therefore
389  "char*" == "char *" and "Class<int>" == "Class<int >", etc.
390 
391  Return 0 when the two name types are equivalent, as in
392  strncmp, but skipping ' '.
393 */
394 SWIGRUNTIME int
395 SWIG_TypeNameComp(const char *f1, const char *l1,
396  const char *f2, const char *l2) {
397  for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
398  while ((*f1 == ' ') && (f1 != l1)) ++f1;
399  while ((*f2 == ' ') && (f2 != l2)) ++f2;
400  if (*f1 != *f2) return (*f1 > *f2) ? 1 : -1;
401  }
402  return (int)((l1 - f1) - (l2 - f2));
403 }
404 
405 /*
406  Check type equivalence in a name list like <name1>|<name2>|...
407  Return 0 if equal, -1 if nb < tb, 1 if nb > tb
408 */
409 SWIGRUNTIME int
410 SWIG_TypeCmp(const char *nb, const char *tb) {
411  int equiv = 1;
412  const char* te = tb + strlen(tb);
413  const char* ne = nb;
414  while (equiv != 0 && *ne) {
415  for (nb = ne; *ne; ++ne) {
416  if (*ne == '|') break;
417  }
418  equiv = SWIG_TypeNameComp(nb, ne, tb, te);
419  if (*ne) ++ne;
420  }
421  return equiv;
422 }
423 
424 /*
425  Check type equivalence in a name list like <name1>|<name2>|...
426  Return 0 if not equal, 1 if equal
427 */
428 SWIGRUNTIME int
429 SWIG_TypeEquiv(const char *nb, const char *tb) {
430  return SWIG_TypeCmp(nb, tb) == 0 ? 1 : 0;
431 }
432 
433 /*
434  Check the typename
435 */
437 SWIG_TypeCheck(const char *c, swig_type_info *ty) {
438  if (ty) {
439  swig_cast_info *iter = ty->cast;
440  while (iter) {
441  if (strcmp(iter->type->name, c) == 0) {
442  if (iter == ty->cast)
443  return iter;
444  /* Move iter to the top of the linked list */
445  iter->prev->next = iter->next;
446  if (iter->next)
447  iter->next->prev = iter->prev;
448  iter->next = ty->cast;
449  iter->prev = 0;
450  if (ty->cast) ty->cast->prev = iter;
451  ty->cast = iter;
452  return iter;
453  }
454  iter = iter->next;
455  }
456  }
457  return 0;
458 }
459 
460 /*
461  Identical to SWIG_TypeCheck, except strcmp is replaced with a pointer comparison
462 */
465  if (ty) {
466  swig_cast_info *iter = ty->cast;
467  while (iter) {
468  if (iter->type == from) {
469  if (iter == ty->cast)
470  return iter;
471  /* Move iter to the top of the linked list */
472  iter->prev->next = iter->next;
473  if (iter->next)
474  iter->next->prev = iter->prev;
475  iter->next = ty->cast;
476  iter->prev = 0;
477  if (ty->cast) ty->cast->prev = iter;
478  ty->cast = iter;
479  return iter;
480  }
481  iter = iter->next;
482  }
483  }
484  return 0;
485 }
486 
487 /*
488  Cast a pointer up an inheritance hierarchy
489 */
490 SWIGRUNTIMEINLINE void *
491 SWIG_TypeCast(swig_cast_info *ty, void *ptr, int *newmemory) {
492  return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr, newmemory);
493 }
494 
495 /*
496  Dynamic pointer casting. Down an inheritance hierarchy
497 */
500  swig_type_info *lastty = ty;
501  if (!ty || !ty->dcast) return ty;
502  while (ty && (ty->dcast)) {
503  ty = (*ty->dcast)(ptr);
504  if (ty) lastty = ty;
505  }
506  return lastty;
507 }
508 
509 /*
510  Return the name associated with this type
511 */
512 SWIGRUNTIMEINLINE const char *
514  return ty->name;
515 }
516 
517 /*
518  Return the pretty name associated with this type,
519  that is an unmangled type name in a form presentable to the user.
520 */
521 SWIGRUNTIME const char *
523  /* The "str" field contains the equivalent pretty names of the
524  type, separated by vertical-bar characters. We choose
525  to print the last name, as it is often (?) the most
526  specific. */
527  if (!type) return NULL;
528  if (type->str != NULL) {
529  const char *last_name = type->str;
530  const char *s;
531  for (s = type->str; *s; s++)
532  if (*s == '|') last_name = s+1;
533  return last_name;
534  }
535  else
536  return type->name;
537 }
538 
539 /*
540  Set the clientdata field for a type
541 */
542 SWIGRUNTIME void
544  swig_cast_info *cast = ti->cast;
545  /* if (ti->clientdata == clientdata) return; */
546  ti->clientdata = clientdata;
547 
548  while (cast) {
549  if (!cast->converter) {
550  swig_type_info *tc = cast->type;
551  if (!tc->clientdata) {
553  }
554  }
555  cast = cast->next;
556  }
557 }
558 SWIGRUNTIME void
561  ti->owndata = 1;
562 }
563 
564 /*
565  Search for a swig_type_info structure only by mangled name
566  Search is a O(log #types)
567 
568  We start searching at module start, and finish searching when start == end.
569  Note: if start == end at the beginning of the function, we go all the way around
570  the circular list.
571 */
574  swig_module_info *end,
575  const char *name) {
576  swig_module_info *iter = start;
577  do {
578  if (iter->size) {
579  size_t l = 0;
580  size_t r = iter->size - 1;
581  do {
582  /* since l+r >= 0, we can (>> 1) instead (/ 2) */
583  size_t i = (l + r) >> 1;
584  const char *iname = iter->types[i]->name;
585  if (iname) {
586  int compare = strcmp(name, iname);
587  if (compare == 0) {
588  return iter->types[i];
589  } else if (compare < 0) {
590  if (i) {
591  r = i - 1;
592  } else {
593  break;
594  }
595  } else if (compare > 0) {
596  l = i + 1;
597  }
598  } else {
599  break; /* should never happen */
600  }
601  } while (l <= r);
602  }
603  iter = iter->next;
604  } while (iter != end);
605  return 0;
606 }
607 
608 /*
609  Search for a swig_type_info structure for either a mangled name or a human readable name.
610  It first searches the mangled names of the types, which is a O(log #types)
611  If a type is not found it then searches the human readable names, which is O(#types).
612 
613  We start searching at module start, and finish searching when start == end.
614  Note: if start == end at the beginning of the function, we go all the way around
615  the circular list.
616 */
619  swig_module_info *end,
620  const char *name) {
621  /* STEP 1: Search the name field using binary search */
622  swig_type_info *ret = SWIG_MangledTypeQueryModule(start, end, name);
623  if (ret) {
624  return ret;
625  } else {
626  /* STEP 2: If the type hasn't been found, do a complete search
627  of the str field (the human readable name) */
628  swig_module_info *iter = start;
629  do {
630  size_t i = 0;
631  for (; i < iter->size; ++i) {
632  if (iter->types[i]->str && (SWIG_TypeEquiv(iter->types[i]->str, name)))
633  return iter->types[i];
634  }
635  iter = iter->next;
636  } while (iter != end);
637  }
638 
639  /* neither found a match */
640  return 0;
641 }
642 
643 /*
644  Pack binary data into a string
645 */
646 SWIGRUNTIME char *
647 SWIG_PackData(char *c, void *ptr, size_t sz) {
648  static const char hex[17] = "0123456789abcdef";
649  const unsigned char *u = (unsigned char *) ptr;
650  const unsigned char *eu = u + sz;
651  for (; u != eu; ++u) {
652  unsigned char uu = *u;
653  *(c++) = hex[(uu & 0xf0) >> 4];
654  *(c++) = hex[uu & 0xf];
655  }
656  return c;
657 }
658 
659 /*
660  Unpack binary data from a string
661 */
662 SWIGRUNTIME const char *
663 SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
664  unsigned char *u = (unsigned char *) ptr;
665  const unsigned char *eu = u + sz;
666  for (; u != eu; ++u) {
667  char d = *(c++);
668  unsigned char uu;
669  if ((d >= '0') && (d <= '9'))
670  uu = (unsigned char)((d - '0') << 4);
671  else if ((d >= 'a') && (d <= 'f'))
672  uu = (unsigned char)((d - ('a'-10)) << 4);
673  else
674  return (char *) 0;
675  d = *(c++);
676  if ((d >= '0') && (d <= '9'))
677  uu |= (unsigned char)(d - '0');
678  else if ((d >= 'a') && (d <= 'f'))
679  uu |= (unsigned char)(d - ('a'-10));
680  else
681  return (char *) 0;
682  *u = uu;
683  }
684  return c;
685 }
686 
687 /*
688  Pack 'void *' into a string buffer.
689 */
690 SWIGRUNTIME char *
691 SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
692  char *r = buff;
693  if ((2*sizeof(void *) + 2) > bsz) return 0;
694  *(r++) = '_';
695  r = SWIG_PackData(r,&ptr,sizeof(void *));
696  if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
697  strcpy(r,name);
698  return buff;
699 }
700 
701 SWIGRUNTIME const char *
702 SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
703  if (*c != '_') {
704  if (strcmp(c,"NULL") == 0) {
705  *ptr = (void *) 0;
706  return name;
707  } else {
708  return 0;
709  }
710  }
711  return SWIG_UnpackData(++c,ptr,sizeof(void *));
712 }
713 
714 SWIGRUNTIME char *
715 SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
716  char *r = buff;
717  size_t lname = (name ? strlen(name) : 0);
718  if ((2*sz + 2 + lname) > bsz) return 0;
719  *(r++) = '_';
720  r = SWIG_PackData(r,ptr,sz);
721  if (lname) {
722  strncpy(r,name,lname+1);
723  } else {
724  *r = 0;
725  }
726  return buff;
727 }
728 
729 SWIGRUNTIME const char *
730 SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
731  if (*c != '_') {
732  if (strcmp(c,"NULL") == 0) {
733  memset(ptr,0,sz);
734  return name;
735  } else {
736  return 0;
737  }
738  }
739  return SWIG_UnpackData(++c,ptr,sz);
740 }
741 
742 #ifdef __cplusplus
743 }
744 #endif
745 
746 /* Errors in SWIG */
747 #define SWIG_UnknownError -1
748 #define SWIG_IOError -2
749 #define SWIG_RuntimeError -3
750 #define SWIG_IndexError -4
751 #define SWIG_TypeError -5
752 #define SWIG_DivisionByZero -6
753 #define SWIG_OverflowError -7
754 #define SWIG_SyntaxError -8
755 #define SWIG_ValueError -9
756 #define SWIG_SystemError -10
757 #define SWIG_AttributeError -11
758 #define SWIG_MemoryError -12
759 #define SWIG_NullReferenceError -13
760 
761 
762 
763 /* -----------------------------------------------------------------------------
764  * error manipulation
765  * ----------------------------------------------------------------------------- */
766 
767 SWIGINTERN const char*
769  const char* type = 0;
770  switch(code) {
771  case SWIG_MemoryError:
772  type = "MemoryError";
773  break;
774  case SWIG_IOError:
775  type = "IOError";
776  break;
777  case SWIG_RuntimeError:
778  type = "RuntimeError";
779  break;
780  case SWIG_IndexError:
781  type = "IndexError";
782  break;
783  case SWIG_TypeError:
784  type = "TypeError";
785  break;
786  case SWIG_DivisionByZero:
787  type = "ZeroDivisionError";
788  break;
789  case SWIG_OverflowError:
790  type = "OverflowError";
791  break;
792  case SWIG_SyntaxError:
793  type = "SyntaxError";
794  break;
795  case SWIG_ValueError:
796  type = "ValueError";
797  break;
798  case SWIG_SystemError:
799  type = "SystemError";
800  break;
801  case SWIG_AttributeError:
802  type = "AttributeError";
803  break;
804  default:
805  type = "RuntimeError";
806  }
807  return type;
808 }
809 
810 
811 SWIGINTERN void
812 SWIG_Tcl_SetErrorObj(Tcl_Interp *interp, const char *ctype, Tcl_Obj *obj)
813 {
814  Tcl_ResetResult(interp);
815  Tcl_SetObjResult(interp, obj);
816  Tcl_SetErrorCode(interp, "SWIG", ctype, NULL);
817 }
818 
819 SWIGINTERN void
820 SWIG_Tcl_SetErrorMsg(Tcl_Interp *interp, const char *ctype, const char *mesg)
821 {
822  Tcl_ResetResult(interp);
823  Tcl_SetErrorCode(interp, "SWIG", ctype, NULL);
824  Tcl_AppendResult(interp, ctype, " ", mesg, NULL);
825  /*
826  Tcl_AddErrorInfo(interp, ctype);
827  Tcl_AddErrorInfo(interp, " ");
828  Tcl_AddErrorInfo(interp, mesg);
829  */
830 }
831 
832 SWIGINTERNINLINE void
833 SWIG_Tcl_AddErrorMsg(Tcl_Interp *interp, const char* mesg)
834 {
835  Tcl_AddErrorInfo(interp, mesg);
836 }
837 
838 
839 
840 /* -----------------------------------------------------------------------------
841  * SWIG API. Portion that goes into the runtime
842  * ----------------------------------------------------------------------------- */
843 #ifdef __cplusplus
844 extern "C" {
845 #endif
846 
847 /* -----------------------------------------------------------------------------
848  * Constant declarations
849  * ----------------------------------------------------------------------------- */
850 
851 /* Constant Types */
852 #define SWIG_TCL_POINTER 4
853 #define SWIG_TCL_BINARY 5
854 
855 /* Constant information structure */
856 typedef struct swig_const_info {
857  int type;
858  const char *name;
859  long lvalue;
860  double dvalue;
861  void *pvalue;
864 
865 typedef int (*swig_wrapper)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST []);
866 typedef int (*swig_wrapper_func)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST []);
867 typedef char *(*swig_variable_func)(ClientData, Tcl_Interp *, char *, char *, int);
868 typedef void (*swig_delete_func)(ClientData);
869 
870 typedef struct swig_method {
871  const char *name;
874 
875 typedef struct swig_attribute {
876  const char *name;
880 
881 typedef struct swig_class {
882  const char *name;
885  void (*destructor)(void *);
888  struct swig_class **bases;
889  const char **base_names;
891  Tcl_HashTable hashtable;
893 
894 typedef struct swig_instance {
895  Tcl_Obj *thisptr;
896  void *thisvalue;
898  int destroy;
899  Tcl_Command cmdtok;
901 
902 /* Structure for command table */
903 typedef struct {
904  const char *name;
905  int (*wrapper)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST []);
906  ClientData clientdata;
908 
909 /* Structure for variable linking table */
910 typedef struct {
911  const char *name;
912  void *addr;
913  char * (*get)(ClientData, Tcl_Interp *, char *, char *, int);
914  char * (*set)(ClientData, Tcl_Interp *, char *, char *, int);
915 } swig_var_info;
916 
917 
918 /* -----------------------------------------------------------------------------*
919  * Install a constant object
920  * -----------------------------------------------------------------------------*/
921 
922 static Tcl_HashTable swigconstTable;
923 static int swigconstTableinit = 0;
924 
925 SWIGINTERN void
926 SWIG_Tcl_SetConstantObj(Tcl_Interp *interp, const char* name, Tcl_Obj *obj) {
927  int newobj;
928  Tcl_ObjSetVar2(interp,Tcl_NewStringObj(name,-1), NULL, obj, TCL_GLOBAL_ONLY);
929  Tcl_SetHashValue(Tcl_CreateHashEntry(&swigconstTable, name, &newobj), (ClientData) obj);
930 }
931 
932 SWIGINTERN Tcl_Obj *
933 SWIG_Tcl_GetConstantObj(const char *key) {
934  Tcl_HashEntry *entryPtr;
935  if (!swigconstTableinit) return 0;
936  entryPtr = Tcl_FindHashEntry(&swigconstTable, key);
937  if (entryPtr) {
938  return (Tcl_Obj *) Tcl_GetHashValue(entryPtr);
939  }
940  return 0;
941 }
942 
943 #ifdef __cplusplus
944 }
945 #endif
946 
947 
948 
949 /* -----------------------------------------------------------------------------
950  * tclrun.swg
951  *
952  * This file contains the runtime support for Tcl modules and includes
953  * code for managing global variables and pointer type checking.
954  * ----------------------------------------------------------------------------- */
955 
956 /* Common SWIG API */
957 
958 /* for raw pointers */
959 #define SWIG_ConvertPtr(oc, ptr, ty, flags) SWIG_Tcl_ConvertPtr(interp, oc, ptr, ty, flags)
960 #define SWIG_NewPointerObj(ptr, type, flags) SWIG_Tcl_NewPointerObj(ptr, type, flags)
961 
962 /* for raw packed data */
963 #define SWIG_ConvertPacked(obj, ptr, sz, ty) SWIG_Tcl_ConvertPacked(interp, obj, ptr, sz, ty)
964 #define SWIG_NewPackedObj(ptr, sz, type) SWIG_Tcl_NewPackedObj(ptr, sz, type)
965 
966 /* for class or struct pointers */
967 #define SWIG_ConvertInstance(obj, pptr, type, flags) SWIG_Tcl_ConvertPtr(interp, obj, pptr, type, flags)
968 #define SWIG_NewInstanceObj(thisvalue, type, flags) SWIG_Tcl_NewInstanceObj(interp, thisvalue, type, flags)
969 
970 /* for C or C++ function pointers */
971 #define SWIG_ConvertFunctionPtr(obj, pptr, type) SWIG_Tcl_ConvertPtr(interp, obj, pptr, type, 0)
972 #define SWIG_NewFunctionPtrObj(ptr, type) SWIG_Tcl_NewPointerObj(ptr, type, 0)
973 
974 /* for C++ member pointers, ie, member methods */
975 #define SWIG_ConvertMember(obj, ptr, sz, ty) SWIG_Tcl_ConvertPacked(interp,obj, ptr, sz, ty)
976 #define SWIG_NewMemberObj(ptr, sz, type) SWIG_Tcl_NewPackedObj(ptr, sz, type)
977 
978 
979 /* Runtime API */
980 
981 #define SWIG_GetModule(clientdata) SWIG_Tcl_GetModule((Tcl_Interp *) (clientdata))
982 #define SWIG_SetModule(clientdata, pointer) SWIG_Tcl_SetModule((Tcl_Interp *) (clientdata), pointer)
983 
984 
985 /* Error manipulation */
986 
987 #define SWIG_ErrorType(code) SWIG_Tcl_ErrorType(code)
988 #define SWIG_Error(code, msg) SWIG_Tcl_SetErrorMsg(interp, SWIG_Tcl_ErrorType(code), msg)
989 #define SWIG_fail goto fail
990 
991 
992 /* Tcl-specific SWIG API */
993 
994 #define SWIG_Acquire(ptr) SWIG_Tcl_Acquire(ptr)
995 #define SWIG_MethodCommand SWIG_Tcl_MethodCommand
996 #define SWIG_Disown(ptr) SWIG_Tcl_Disown(ptr)
997 #define SWIG_ConvertPtrFromString(c, ptr, ty, flags) SWIG_Tcl_ConvertPtrFromString(interp, c, ptr, ty, flags)
998 #define SWIG_MakePtr(c, ptr, ty, flags) SWIG_Tcl_MakePtr(c, ptr, ty, flags)
999 #define SWIG_PointerTypeFromString(c) SWIG_Tcl_PointerTypeFromString(c)
1000 #define SWIG_GetArgs SWIG_Tcl_GetArgs
1001 #define SWIG_GetConstantObj(key) SWIG_Tcl_GetConstantObj(key)
1002 #define SWIG_ObjectConstructor SWIG_Tcl_ObjectConstructor
1003 #define SWIG_Thisown(ptr) SWIG_Tcl_Thisown(ptr)
1004 #define SWIG_ObjectDelete SWIG_Tcl_ObjectDelete
1005 
1006 
1007 #define SWIG_TCL_DECL_ARGS_2(arg1, arg2) (Tcl_Interp *interp SWIGUNUSED, arg1, arg2)
1008 #define SWIG_TCL_CALL_ARGS_2(arg1, arg2) (interp, arg1, arg2)
1009 /* -----------------------------------------------------------------------------
1010  * pointers/data manipulation
1011  * ----------------------------------------------------------------------------- */
1012 
1013 /* For backward compatibility only */
1014 #define SWIG_POINTER_EXCEPTION 0
1015 #define SWIG_GetConstant SWIG_GetConstantObj
1016 #define SWIG_Tcl_GetConstant SWIG_Tcl_GetConstantObj
1017 
1018 #if TCL_MAJOR_VERSION >= 8 && TCL_MINOR_VERSION >= 5
1019 #define SWIG_TCL_HASHTABLE_INIT {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
1020 #else
1021 #define SWIG_TCL_HASHTABLE_INIT {0}
1022 #endif
1023 
1024 #include "assert.h"
1025 
1026 #ifdef __cplusplus
1027 extern "C" {
1028 #endif
1029 
1030 /* Object support */
1031 
1032 SWIGRUNTIME Tcl_HashTable*
1034  static Tcl_HashTable swigobjectTable;
1035  static int swigobjectTableinit = 0;
1036  if (!swigobjectTableinit) {
1037  Tcl_InitHashTable(&swigobjectTable, TCL_ONE_WORD_KEYS);
1038  swigobjectTableinit = 1;
1039  }
1040  return &swigobjectTable;
1041 }
1042 
1043 /* Acquire ownership of a pointer */
1044 SWIGRUNTIME void
1045 SWIG_Tcl_Acquire(void *ptr) {
1046  int newobj;
1047  Tcl_CreateHashEntry(SWIG_Tcl_ObjectTable(), (char *) ptr, &newobj);
1048 }
1049 
1050 SWIGRUNTIME int
1051 SWIG_Tcl_Thisown(void *ptr) {
1052  if (Tcl_FindHashEntry(SWIG_Tcl_ObjectTable(), (char *) ptr)) {
1053  return 1;
1054  }
1055  return 0;
1056 }
1057 
1058 /* Disown a pointer. Returns 1 if we owned it to begin with */
1059 SWIGRUNTIME int
1060 SWIG_Tcl_Disown(void *ptr) {
1061  Tcl_HashEntry *entryPtr = Tcl_FindHashEntry(SWIG_Tcl_ObjectTable(), (char *) ptr);
1062  if (entryPtr) {
1063  Tcl_DeleteHashEntry(entryPtr);
1064  return 1;
1065  }
1066  return 0;
1067 }
1068 
1069 /* Convert a pointer value */
1070 SWIGRUNTIME int
1071 SWIG_Tcl_ConvertPtrFromString(Tcl_Interp *interp, const char *c, void **ptr, swig_type_info *ty, int flags) {
1072  swig_cast_info *tc;
1073  /* Pointer values must start with leading underscore */
1074  while (*c != '_') {
1075  *ptr = (void *) 0;
1076  if (strcmp(c,"NULL") == 0)
1078 
1079  /* Empty string: not a pointer */
1080  if (*c == 0) return SWIG_ERROR;
1081 
1082  /* Hmmm. It could be an object name. */
1083 
1084  /* Check if this is a command at all. Prevents <c> cget -this */
1085  /* from being called when c is not a command, firing the unknown proc */
1086  if (Tcl_VarEval(interp,"info commands ", c, (char *) NULL) == TCL_OK) {
1087  Tcl_Obj *result = Tcl_GetObjResult(interp);
1088  if (*(Tcl_GetStringFromObj(result, NULL)) == 0) {
1089  /* It's not a command, so it can't be a pointer */
1090  Tcl_ResetResult(interp);
1091  return SWIG_ERROR;
1092  }
1093  } else {
1094  /* This will only fail if the argument is multiple words. */
1095  /* Multiple words are also not commands. */
1096  Tcl_ResetResult(interp);
1097  return SWIG_ERROR;
1098  }
1099 
1100  /* Check if this is really a SWIG pointer */
1101  if (Tcl_VarEval(interp,c," cget -this", (char *) NULL) != TCL_OK) {
1102  Tcl_ResetResult(interp);
1103  return SWIG_ERROR;
1104  }
1105 
1106  c = Tcl_GetStringFromObj(Tcl_GetObjResult(interp), NULL);
1107  }
1108 
1109  c++;
1110  c = SWIG_UnpackData(c,ptr,sizeof(void *));
1111  if (ty) {
1112  tc = c ? SWIG_TypeCheck(c,ty) : 0;
1113  if (!tc) {
1114  return SWIG_ERROR;
1115  }
1116  if (flags & SWIG_POINTER_DISOWN) {
1117  SWIG_Disown((void *) *ptr);
1118  }
1119  {
1120  int newmemory = 0;
1121  *ptr = SWIG_TypeCast(tc,(void *) *ptr,&newmemory);
1122  assert(!newmemory); /* newmemory handling not yet implemented */
1123  }
1124  }
1125  return SWIG_OK;
1126 }
1127 
1128 /* Convert a pointer value */
1130 SWIG_Tcl_ConvertPtr(Tcl_Interp *interp, Tcl_Obj *oc, void **ptr, swig_type_info *ty, int flags) {
1131  return SWIG_Tcl_ConvertPtrFromString(interp, Tcl_GetStringFromObj(oc,NULL), ptr, ty, flags);
1132 }
1133 
1134 /* Convert a pointer value */
1135 SWIGRUNTIME char *
1137  char d;
1138  /* Pointer values must start with leading underscore. NULL has no type */
1139  if (*c != '_') {
1140  return 0;
1141  }
1142  c++;
1143  /* Extract hex value from pointer */
1144  while ((d = *c)) {
1145  if (!(((d >= '0') && (d <= '9')) || ((d >= 'a') && (d <= 'f')))) break;
1146  c++;
1147  }
1148  return c;
1149 }
1150 
1151 /* Convert a packed pointer value */
1152 SWIGRUNTIME int
1153 SWIG_Tcl_ConvertPacked(Tcl_Interp *SWIGUNUSEDPARM(interp) , Tcl_Obj *obj, void *ptr, int sz, swig_type_info *ty) {
1154  swig_cast_info *tc;
1155  const char *c;
1156 
1157  if (!obj) goto type_error;
1158  c = Tcl_GetStringFromObj(obj,NULL);
1159  /* Pointer values must start with leading underscore */
1160  if (*c != '_') goto type_error;
1161  c++;
1162  c = SWIG_UnpackData(c,ptr,sz);
1163  if (ty) {
1164  tc = SWIG_TypeCheck(c,ty);
1165  if (!tc) goto type_error;
1166  }
1167  return SWIG_OK;
1168 
1169  type_error:
1170 
1171  return SWIG_ERROR;
1172 }
1173 
1174 
1175 /* Take a pointer and convert it to a string */
1176 SWIGRUNTIME void
1177 SWIG_Tcl_MakePtr(char *c, void *ptr, swig_type_info *ty, int SWIGUNUSEDPARM(flags)) {
1178  if (ptr) {
1179  *(c++) = '_';
1180  c = SWIG_PackData(c,&ptr,sizeof(void *));
1181  strcpy(c,ty->name);
1182  } else {
1183  strcpy(c,"NULL");
1184  }
1185 }
1186 
1187 /* Create a new pointer object */
1188 SWIGRUNTIMEINLINE Tcl_Obj *
1189 SWIG_Tcl_NewPointerObj(void *ptr, swig_type_info *type, int flags) {
1190  Tcl_Obj *robj;
1191  char result[SWIG_BUFFER_SIZE];
1192  SWIG_MakePtr(result,ptr,type,flags);
1193  robj = Tcl_NewStringObj(result,-1);
1194  return robj;
1195 }
1196 
1197 SWIGRUNTIME Tcl_Obj *
1198 SWIG_Tcl_NewPackedObj(void *ptr, int sz, swig_type_info *type) {
1199  char result[1024];
1200  char *r = result;
1201  if ((2*sz + 1 + strlen(type->name)) > 1000) return 0;
1202  *(r++) = '_';
1203  r = SWIG_PackData(r,ptr,sz);
1204  strcpy(r,type->name);
1205  return Tcl_NewStringObj(result,-1);
1206 }
1207 
1208 /* -----------------------------------------------------------------------------*
1209  * Get type list
1210  * -----------------------------------------------------------------------------*/
1211 
1213 SWIG_Tcl_GetModule(Tcl_Interp *interp) {
1214  const char *data;
1215  swig_module_info *ret = 0;
1216 
1217  /* first check if pointer already created */
1218  data = Tcl_GetVar(interp, (char *)"swig_runtime_data_type_pointer" SWIG_RUNTIME_VERSION SWIG_TYPE_TABLE_NAME, TCL_GLOBAL_ONLY);
1219  if (data) {
1220  SWIG_UnpackData(data, &ret, sizeof(swig_type_info **));
1221  }
1222 
1223  return ret;
1224 }
1225 
1226 SWIGRUNTIME void
1227 SWIG_Tcl_SetModule(Tcl_Interp *interp, swig_module_info *module) {
1228  char buf[SWIG_BUFFER_SIZE];
1229  char *data;
1230 
1231  /* create a new pointer */
1232  data = SWIG_PackData(buf, &module, sizeof(swig_type_info **));
1233  *data = 0;
1234  Tcl_SetVar(interp, (char *)"swig_runtime_data_type_pointer" SWIG_RUNTIME_VERSION SWIG_TYPE_TABLE_NAME, buf, TCL_GLOBAL_ONLY);
1235 }
1236 
1237 /* -----------------------------------------------------------------------------*
1238  * Object auxiliaries
1239  * -----------------------------------------------------------------------------*/
1240 
1241 
1242 SWIGRUNTIME void
1243 SWIG_Tcl_ObjectDelete(ClientData clientData) {
1244  swig_instance *si = (swig_instance *) clientData;
1245  if (!si) return;
1246  if (si->destroy && SWIG_Disown(si->thisvalue)) {
1247  if (si->classptr->destructor) {
1248  (si->classptr->destructor)(si->thisvalue);
1249  }
1250  }
1251  Tcl_DecrRefCount(si->thisptr);
1252  free(si);
1253 }
1254 
1255 /* Function to invoke object methods given an instance */
1256 SWIGRUNTIME int
1257 SWIG_Tcl_MethodCommand(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST _objv[]) {
1258  char *method, *attrname;
1259  swig_instance *inst = (swig_instance *) clientData;
1260  swig_method *meth;
1261  swig_attribute *attr;
1262  Tcl_Obj *oldarg;
1263  Tcl_Obj **objv;
1264  int rcode;
1265  swig_class *cls;
1266  swig_class *cls_stack[64];
1267  int cls_stack_bi[64];
1268  int cls_stack_top = 0;
1269  int numconf = 2;
1270  int bi;
1271 
1272  objv = (Tcl_Obj **) _objv;
1273  if (objc < 2) {
1274  Tcl_SetResult(interp, (char *) "wrong # args.", TCL_STATIC);
1275  return TCL_ERROR;
1276  }
1277  method = Tcl_GetStringFromObj(objv[1],NULL);
1278  if (strcmp(method,"-acquire") == 0) {
1279  inst->destroy = 1;
1280  SWIG_Acquire(inst->thisvalue);
1281  return TCL_OK;
1282  }
1283  if (strcmp(method,"-disown") == 0) {
1284  if (inst->destroy) {
1285  SWIG_Disown(inst->thisvalue);
1286  }
1287  inst->destroy = 0;
1288  return TCL_OK;
1289  }
1290  if (strcmp(method,"-delete") == 0) {
1291  Tcl_DeleteCommandFromToken(interp,inst->cmdtok);
1292  return TCL_OK;
1293  }
1294  cls_stack[cls_stack_top] = inst->classptr;
1295  cls_stack_bi[cls_stack_top] = -1;
1296  while (1) {
1297  Tcl_HashEntry* hashentry;
1298  bi = cls_stack_bi[cls_stack_top];
1299  cls = cls_stack[cls_stack_top];
1300  if (bi != -1) {
1301  if (!cls->bases[bi] && cls->base_names[bi]) {
1302  /* lookup and cache the base class */
1303  swig_type_info *info = SWIG_TypeQueryModule(cls->module, cls->module, cls->base_names[bi]);
1304  if (info) cls->bases[bi] = (swig_class *) info->clientdata;
1305  }
1306  cls = cls->bases[bi];
1307  if (cls) {
1308  cls_stack_bi[cls_stack_top]++;
1309  cls_stack_top++;
1310  cls_stack[cls_stack_top] = cls;
1311  cls_stack_bi[cls_stack_top] = -1;
1312  continue;
1313  }
1314  }
1315  if (!cls) {
1316  cls_stack_top--;
1317  if (cls_stack_top < 0) break;
1318  else continue;
1319  }
1320  cls_stack_bi[cls_stack_top]++;
1321 
1322  hashentry = Tcl_FindHashEntry(&(cls->hashtable), method);
1323  if (hashentry) {
1324  ClientData cd = Tcl_GetHashValue(hashentry);
1325  swig_wrapper method_wrapper = (swig_wrapper)cd;
1326  oldarg = objv[1];
1327  objv[1] = inst->thisptr;
1328  Tcl_IncrRefCount(inst->thisptr);
1329  rcode = (method_wrapper)(clientData,interp,objc,objv);
1330  objv[1] = oldarg;
1331  Tcl_DecrRefCount(inst->thisptr);
1332  return rcode;
1333  }
1334  /* Check class methods for a match */
1335  if (strcmp(method,"cget") == 0) {
1336  if (objc < 3) {
1337  Tcl_SetResult(interp, (char *) "wrong # args.", TCL_STATIC);
1338  return TCL_ERROR;
1339  }
1340  attrname = Tcl_GetStringFromObj(objv[2],NULL);
1341  attr = cls->attributes;
1342  while (attr && attr->name) {
1343  if ((strcmp(attr->name, attrname) == 0) && (attr->getmethod)) {
1344  oldarg = objv[1];
1345  objv[1] = inst->thisptr;
1346  Tcl_IncrRefCount(inst->thisptr);
1347  rcode = (*attr->getmethod)(clientData,interp,2, objv);
1348  objv[1] = oldarg;
1349  Tcl_DecrRefCount(inst->thisptr);
1350  return rcode;
1351  }
1352  attr++;
1353  }
1354  if (strcmp(attrname, "-this") == 0) {
1355  Tcl_SetObjResult(interp, Tcl_DuplicateObj(inst->thisptr));
1356  return TCL_OK;
1357  }
1358  if (strcmp(attrname, "-thisown") == 0) {
1359  if (SWIG_Thisown(inst->thisvalue)) {
1360  Tcl_SetResult(interp,(char*)"1",TCL_STATIC);
1361  } else {
1362  Tcl_SetResult(interp,(char*)"0",TCL_STATIC);
1363  }
1364  return TCL_OK;
1365  }
1366  } else if (strcmp(method, "configure") == 0) {
1367  int i;
1368  if (objc < 4) {
1369  Tcl_SetResult(interp, (char *) "wrong # args.", TCL_STATIC);
1370  return TCL_ERROR;
1371  }
1372  i = 2;
1373  while (i < objc) {
1374  attrname = Tcl_GetStringFromObj(objv[i],NULL);
1375  attr = cls->attributes;
1376  while (attr && attr->name) {
1377  if ((strcmp(attr->name, attrname) == 0) && (attr->setmethod)) {
1378  oldarg = objv[i];
1379  objv[i] = inst->thisptr;
1380  Tcl_IncrRefCount(inst->thisptr);
1381  rcode = (*attr->setmethod)(clientData,interp,3, &objv[i-1]);
1382  objv[i] = oldarg;
1383  Tcl_DecrRefCount(inst->thisptr);
1384  if (rcode != TCL_OK) return rcode;
1385  numconf += 2;
1386  }
1387  attr++;
1388  }
1389  i+=2;
1390  }
1391  }
1392  }
1393  if (strcmp(method,"configure") == 0) {
1394  if (numconf >= objc) {
1395  return TCL_OK;
1396  } else {
1397  Tcl_SetResult(interp,(char *) "Invalid attribute name.", TCL_STATIC);
1398  return TCL_ERROR;
1399  }
1400  }
1401  if (strcmp(method,"cget") == 0) {
1402  Tcl_SetResult(interp,(char *) "Invalid attribute name.", TCL_STATIC);
1403  return TCL_ERROR;
1404  }
1405  Tcl_SetResult(interp, (char *) "Invalid method. Must be one of: configure cget -acquire -disown -delete", TCL_STATIC);
1406  cls = inst->classptr;
1407  bi = 0;
1408  while (cls) {
1409  meth = cls->methods;
1410  while (meth && meth->name) {
1411  char *cr = (char *) Tcl_GetStringResult(interp);
1412  size_t meth_len = strlen(meth->name);
1413  char* where = strchr(cr,':');
1414  while(where) {
1415  where = strstr(where, meth->name);
1416  if(where) {
1417  if(where[-1] == ' ' && (where[meth_len] == ' ' || where[meth_len]==0)) {
1418  break;
1419  } else {
1420  where++;
1421  }
1422  }
1423  }
1424 
1425  if (!where)
1426  Tcl_AppendElement(interp, (char *) meth->name);
1427  meth++;
1428  }
1429  cls = inst->classptr->bases[bi++];
1430  }
1431  return TCL_ERROR;
1432 }
1433 
1434 /* This function takes the current result and turns it into an object command */
1435 SWIGRUNTIME Tcl_Obj *
1436 SWIG_Tcl_NewInstanceObj(Tcl_Interp *interp, void *thisvalue, swig_type_info *type, int flags) {
1437  Tcl_Obj *robj = SWIG_NewPointerObj(thisvalue, type,0);
1438  /* Check to see if this pointer belongs to a class or not */
1439  if (thisvalue && (type->clientdata) && (interp)) {
1440  Tcl_CmdInfo ci;
1441  char *name;
1442  name = Tcl_GetStringFromObj(robj,NULL);
1443  if (!Tcl_GetCommandInfo(interp,name, &ci) || (flags)) {
1444  swig_instance *newinst = (swig_instance *) malloc(sizeof(swig_instance));
1445  newinst->thisptr = Tcl_DuplicateObj(robj);
1446  Tcl_IncrRefCount(newinst->thisptr);
1447  newinst->thisvalue = thisvalue;
1448  newinst->classptr = (swig_class *) type->clientdata;
1449  newinst->destroy = flags;
1450  newinst->cmdtok = Tcl_CreateObjCommand(interp, Tcl_GetStringFromObj(robj,NULL), (swig_wrapper_func) SWIG_MethodCommand, (ClientData) newinst, (swig_delete_func) SWIG_ObjectDelete);
1451  if (flags) {
1452  SWIG_Acquire(thisvalue);
1453  }
1454  }
1455  }
1456  return robj;
1457 }
1458 
1459 /* Function to create objects */
1460 SWIGRUNTIME int
1461 SWIG_Tcl_ObjectConstructor(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
1462  Tcl_Obj *newObj = 0;
1463  void *thisvalue = 0;
1464  swig_instance *newinst = 0;
1465  swig_class *classptr = (swig_class *) clientData;
1466  swig_wrapper cons = 0;
1467  char *name = 0;
1468  int firstarg = 0;
1469  int thisarg = 0;
1470  int destroy = 1;
1471 
1472  if (!classptr) {
1473  Tcl_SetResult(interp, (char *) "swig: internal runtime error. No class object defined.", TCL_STATIC);
1474  return TCL_ERROR;
1475  }
1476  cons = classptr->constructor;
1477  if (objc > 1) {
1478  char *s = Tcl_GetStringFromObj(objv[1],NULL);
1479  if (strcmp(s,"-this") == 0) {
1480  thisarg = 2;
1481  cons = 0;
1482  } else if (strcmp(s,"-args") == 0) {
1483  firstarg = 1;
1484  } else if (objc == 2) {
1485  firstarg = 1;
1486  name = s;
1487  } else if (objc >= 3) {
1488  char *s1;
1489  name = s;
1490  s1 = Tcl_GetStringFromObj(objv[2],NULL);
1491  if (strcmp(s1,"-this") == 0) {
1492  thisarg = 3;
1493  cons = 0;
1494  } else {
1495  firstarg = 1;
1496  }
1497  }
1498  }
1499  if (cons) {
1500  int result;
1501  result = (*cons)(0, interp, objc-firstarg, &objv[firstarg]);
1502  if (result != TCL_OK) {
1503  return result;
1504  }
1505  newObj = Tcl_DuplicateObj(Tcl_GetObjResult(interp));
1506  if (!name) name = Tcl_GetStringFromObj(newObj,NULL);
1507  } else if (thisarg > 0) {
1508  if (thisarg < objc) {
1509  destroy = 0;
1510  newObj = Tcl_DuplicateObj(objv[thisarg]);
1511  if (!name) name = Tcl_GetStringFromObj(newObj,NULL);
1512  } else {
1513  Tcl_SetResult(interp, (char *) "wrong # args.", TCL_STATIC);
1514  return TCL_ERROR;
1515  }
1516  } else {
1517  Tcl_SetResult(interp, (char *) "No constructor available.", TCL_STATIC);
1518  return TCL_ERROR;
1519  }
1520  if (SWIG_Tcl_ConvertPtr(interp,newObj, (void **) &thisvalue, *(classptr->type), 0) != SWIG_OK) {
1521  Tcl_DecrRefCount(newObj);
1522  return TCL_ERROR;
1523  }
1524  newinst = (swig_instance *) malloc(sizeof(swig_instance));
1525  newinst->thisptr = newObj;
1526  Tcl_IncrRefCount(newObj);
1527  newinst->thisvalue = thisvalue;
1528  newinst->classptr = classptr;
1529  newinst->destroy = destroy;
1530  if (destroy) {
1531  SWIG_Acquire(thisvalue);
1532  }
1533  newinst->cmdtok = Tcl_CreateObjCommand(interp,name, (swig_wrapper) SWIG_MethodCommand, (ClientData) newinst, (swig_delete_func) SWIG_ObjectDelete);
1534  return TCL_OK;
1535 }
1536 
1537 /* -----------------------------------------------------------------------------*
1538  * Get arguments
1539  * -----------------------------------------------------------------------------*/
1540 SWIGRUNTIME int
1541 SWIG_Tcl_GetArgs(Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[], const char *fmt, ...) {
1542  int argno = 0, opt = 0;
1543  long tempi;
1544  double tempd;
1545  const char *c;
1546  va_list ap;
1547  void *vptr;
1548  Tcl_Obj *obj = 0;
1549  swig_type_info *ty;
1550 
1551  va_start(ap,fmt);
1552  for (c = fmt; (*c && (*c != ':') && (*c != ';')); c++,argno++) {
1553  if (*c == '|') {
1554  opt = 1;
1555  c++;
1556  }
1557  if (argno >= (objc-1)) {
1558  if (!opt) {
1559  Tcl_SetResult(interp, (char *) "Wrong number of arguments ", TCL_STATIC);
1560  goto argerror;
1561  } else {
1562  va_end(ap);
1563  return TCL_OK;
1564  }
1565  }
1566 
1567  vptr = va_arg(ap,void *);
1568  if (vptr) {
1569  if (isupper(*c)) {
1570  obj = SWIG_Tcl_GetConstantObj(Tcl_GetStringFromObj(objv[argno+1],0));
1571  if (!obj) obj = objv[argno+1];
1572  } else {
1573  obj = objv[argno+1];
1574  }
1575  switch(*c) {
1576  case 'i': case 'I':
1577  case 'l': case 'L':
1578  case 'h': case 'H':
1579  case 'b': case 'B':
1580  if (Tcl_GetLongFromObj(interp,obj,&tempi) != TCL_OK) goto argerror;
1581  if ((*c == 'i') || (*c == 'I')) *((int *)vptr) = (int)tempi;
1582  else if ((*c == 'l') || (*c == 'L')) *((long *)vptr) = (long)tempi;
1583  else if ((*c == 'h') || (*c == 'H')) *((short*)vptr) = (short)tempi;
1584  else if ((*c == 'b') || (*c == 'B')) *((unsigned char *)vptr) = (unsigned char)tempi;
1585  break;
1586  case 'f': case 'F':
1587  case 'd': case 'D':
1588  if (Tcl_GetDoubleFromObj(interp,obj,&tempd) != TCL_OK) goto argerror;
1589  if ((*c == 'f') || (*c == 'F')) *((float *) vptr) = (float)tempd;
1590  else if ((*c == 'd') || (*c == 'D')) *((double*) vptr) = tempd;
1591  break;
1592  case 's': case 'S':
1593  if (*(c+1) == '#') {
1594  int *vlptr = (int *) va_arg(ap, void *);
1595  *((char **) vptr) = Tcl_GetStringFromObj(obj, vlptr);
1596  c++;
1597  } else {
1598  *((char **)vptr) = Tcl_GetStringFromObj(obj,NULL);
1599  }
1600  break;
1601  case 'c': case 'C':
1602  *((char *)vptr) = *(Tcl_GetStringFromObj(obj,NULL));
1603  break;
1604  case 'p': case 'P':
1605  ty = (swig_type_info *) va_arg(ap, void *);
1606  if (SWIG_Tcl_ConvertPtr(interp, obj, (void **) vptr, ty, 0) != SWIG_OK) goto argerror;
1607  break;
1608  case 'o': case 'O':
1609  *((Tcl_Obj **)vptr) = objv[argno+1];
1610  break;
1611  default:
1612  break;
1613  }
1614  }
1615  }
1616 
1617  if ((*c != ';') && ((objc-1) > argno)) {
1618  Tcl_SetResult(interp, (char *) "Wrong # args.", TCL_STATIC);
1619  goto argerror;
1620  }
1621  va_end(ap);
1622  return TCL_OK;
1623 
1624  argerror:
1625  {
1626  char temp[32];
1627  sprintf(temp,"%d", argno+1);
1628  c = strchr(fmt,':');
1629  if (!c) c = strchr(fmt,';');
1630  if (!c) c = (char *)"";
1631  Tcl_AppendResult(interp,c," argument ", temp, NULL);
1632  va_end(ap);
1633  return TCL_ERROR;
1634  }
1635 }
1636 
1637 #ifdef __cplusplus
1638 }
1639 #endif
1640 
1641 
1642 
1643 #define SWIG_exception_fail(code, msg) do { SWIG_Error(code, msg); SWIG_fail; } while(0)
1644 
1645 #define SWIG_contract_assert(expr, msg) if (!(expr)) { SWIG_Error(SWIG_RuntimeError, msg); SWIG_fail; } else
1646 
1647 
1648 
1649 /* -------- TYPES TABLE (BEGIN) -------- */
1650 
1651 #define SWIGTYPE_p_a_3dh swig_types[0]
1652 #define SWIGTYPE_p_a_base swig_types[1]
1653 #define SWIGTYPE_p_a_circle swig_types[2]
1654 #define SWIGTYPE_p_a_coord swig_types[3]
1655 #define SWIGTYPE_p_a_geom_base swig_types[4]
1656 #define SWIGTYPE_p_a_mat swig_types[5]
1657 #define SWIGTYPE_p_a_plane swig_types[6]
1658 #define SWIGTYPE_p_a_point swig_types[7]
1659 #define SWIGTYPE_p_a_point2 swig_types[8]
1660 #define SWIGTYPE_p_a_segment swig_types[9]
1661 #define SWIGTYPE_p_a_segment__denomin_error swig_types[10]
1662 #define SWIGTYPE_p_a_tetrahedron swig_types[11]
1663 #define SWIGTYPE_p_a_triangle swig_types[12]
1664 #define SWIGTYPE_p_char swig_types[13]
1665 #define SWIGTYPE_p_double swig_types[14]
1666 #define SWIGTYPE_p_std__istream swig_types[15]
1667 #define SWIGTYPE_p_std__ostream swig_types[16]
1669 static swig_module_info swig_module = {swig_types, 17, 0, 0, 0, 0};
1670 #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
1671 #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
1672 
1673 /* -------- TYPES TABLE (END) -------- */
1674 
1675 #define SWIG_init A_geom_Init
1676 #define SWIG_name "a_geom"
1677 #define SWIG_prefix ""
1678 #define SWIG_version "0.0"
1679 
1680 #define SWIGVERSION 0x040002
1681 #define SWIG_VERSION SWIGVERSION
1682 
1683 
1684 #define SWIG_as_voidptr(a) const_cast< void * >(static_cast< const void * >(a))
1685 #define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),reinterpret_cast< void** >(a))
1686 
1687 
1688 #include <stdexcept>
1689 
1690 
1691 
1692 #ifdef __cplusplus
1693 extern "C" {
1694 #endif
1695 #ifdef MAC_TCL
1696 #pragma export on
1697 #endif
1698 SWIGEXPORT int SWIG_init(Tcl_Interp *);
1699 #ifdef MAC_TCL
1700 #pragma export off
1701 #endif
1702 #ifdef __cplusplus
1703 }
1704 #endif
1705 
1706 /* Compatibility version for TCL stubs */
1707 #ifndef SWIG_TCL_STUBS_VERSION
1708 #define SWIG_TCL_STUBS_VERSION "8.1"
1709 #endif
1710 
1711 
1712 
1713 #include <string>
1714 
1715 
1716 #include "a_base.h"
1717 #include <iostream>
1718 #include <sstream>
1719 
1720 
1721 #include <limits.h>
1722 #if !defined(SWIG_NO_LLONG_MAX)
1723 # if !defined(LLONG_MAX) && defined(__GNUC__) && defined (__LONG_LONG_MAX__)
1724 # define LLONG_MAX __LONG_LONG_MAX__
1725 # define LLONG_MIN (-LLONG_MAX - 1LL)
1726 # define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL)
1727 # endif
1728 #endif
1729 
1730 
1731 SWIGINTERNINLINE Tcl_Obj *
1732 SWIG_FromCharPtrAndSize(const char* carray, size_t size)
1733 {
1734  return (size < INT_MAX) ? Tcl_NewStringObj(carray, static_cast< int >(size)) : NULL;
1735 }
1736 
1737 
1738 SWIGINTERNINLINE Tcl_Obj *
1739 SWIG_From_std_string (const std::string& s)
1740 {
1741  return SWIG_FromCharPtrAndSize(s.data(), s.size());
1742 }
1743 
1744 
1745 SWIGINTERN int
1746 SWIG_AsVal_double SWIG_TCL_DECL_ARGS_2(Tcl_Obj *obj, double *val)
1747 {
1748  double v;
1749  if (Tcl_GetDoubleFromObj(0, obj, &v) == TCL_OK) {
1750  if (val) *val = v;
1751  return SWIG_OK;
1752  }
1753  return SWIG_TypeError;
1754 }
1755 
1756 
1757  #define SWIG_From_double Tcl_NewDoubleObj
1758 
1759 SWIGINTERN std::string a_base_print(a_base *self){
1760  std::ostringstream out;
1761  out << *self;
1762  return out.str();
1763  }
1764 
1765 #include "a_3dh.h"
1766 
1767 SWIGINTERN std::string a_3dh_print(a_3dh *self){
1768  std::ostringstream out;
1769  out << *self;
1770  return out.str();
1771  }
1772 
1773 #include "a_geom_base.h"
1774 #include <cmath>
1775 
1776 
1777  double r2d(const double r) {return r*45./atan(1.);}
1778  double d2r(const double d) {return d/45.*atan(1.);}
1779 
1780 
1781 #include "a_point.h"
1782 #include <sstream>
1783 
1784 
1785  #define SWIG_From_bool Tcl_NewBooleanObj
1786 
1787 
1788 SWIGINTERN int
1789 SWIG_AsCharPtrAndSize(Tcl_Obj *obj, char** cptr, size_t* psize, int *alloc)
1790 {
1791  int len = 0;
1792  char *cstr = Tcl_GetStringFromObj(obj, &len);
1793  if (cstr) {
1794  if (cptr) *cptr = cstr;
1795  if (psize) *psize = len + 1;
1796  if (alloc) *alloc = SWIG_OLDOBJ;
1797  return SWIG_OK;
1798  }
1799  return SWIG_TypeError;
1800 }
1801 
1802 
1803 SWIGINTERN int
1804 SWIG_AsPtr_std_string SWIG_TCL_DECL_ARGS_2(Tcl_Obj * obj, std::string **val)
1805 {
1806  char* buf = 0 ; size_t size = 0; int alloc = SWIG_OLDOBJ;
1807  if (SWIG_IsOK((SWIG_AsCharPtrAndSize(obj, &buf, &size, &alloc)))) {
1808  if (buf) {
1809  if (val) *val = new std::string(buf, size - 1);
1810  if (alloc == SWIG_NEWOBJ) delete[] buf;
1811  return SWIG_NEWOBJ;
1812  } else {
1813  if (val) *val = 0;
1814  return SWIG_OLDOBJ;
1815  }
1816  } else {
1817  static int init = 0;
1818  static swig_type_info* descriptor = 0;
1819  if (!init) {
1820  descriptor = SWIG_TypeQuery("std::string" " *");
1821  init = 1;
1822  }
1823  if (descriptor) {
1824  std::string *vptr;
1825  int res = SWIG_ConvertPtr(obj, (void**)&vptr, descriptor, 0);
1826  if (SWIG_IsOK(res) && val) *val = vptr;
1827  return res;
1828  }
1829  }
1830  return SWIG_ERROR;
1831 }
1832 
1834  std::ostringstream o;
1835  o << s;
1836  std::istringstream in(o.str().c_str());
1837  double x,y,z;
1838  in >> x >> y >> z;
1839  return new a_point(x,y,z);
1840  }
1841 SWIGINTERN a_point &a_point_negate(a_point *self){return self->operator-();}
1842 SWIGINTERN a_point &a_point_multiply(a_point *self,double v){return self->operator*=(v);}
1843 SWIGINTERN a_point &a_point_divide(a_point *self,double v){return self->operator/=(v);}
1844 
1845  std::string puts(const a_point & p)
1846  {
1847  std::ostringstream out;
1848  out << p;
1849  return out.str();
1850  }
1851 
1852 
1853 #include "a_point2.h"
1854 #include <sstream>
1855 
1857  std::ostringstream o;
1858  o << s;
1859  std::istringstream in(o.str().c_str());
1860  double x,y;
1861  in >> x >> y;
1862  return new a_point2(x,y);
1863  }
1864 SWIGINTERN a_point2 &a_point2_negate(a_point2 *self){return self->operator-();}
1865 SWIGINTERN a_point2 &a_point2_multiply(a_point2 *self,double v){return self->operator*=(v);}
1866 SWIGINTERN a_point2 &a_point2_divide(a_point2 *self,double v){return self->operator/=(v);}
1867 
1868 #include "a_segment.h"
1869 
1870 
1871 #include "a_plane.h"
1872 #include <sstream>
1873 
1874 SWIGINTERN std::string a_plane_print(a_plane *self){
1875  std::ostringstream out;
1876  out << *self;
1877  return out.str();
1878  }
1879 
1880 #include "a_tetrahedron.h"
1881 
1882 
1883 SWIGINTERN int
1884 SWIG_AsVal_long SWIG_TCL_DECL_ARGS_2(Tcl_Obj *obj, long* val)
1885 {
1886  long v;
1887  if (Tcl_GetLongFromObj(0,obj, &v) == TCL_OK) {
1888  if (val) *val = (long) v;
1889  return SWIG_OK;
1890  }
1891  return SWIG_TypeError;
1892 }
1893 
1894 
1895 SWIGINTERN int
1896 SWIG_AsVal_int SWIG_TCL_DECL_ARGS_2(Tcl_Obj * obj, int *val)
1897 {
1898  long v;
1899  int res = SWIG_AsVal_long SWIG_TCL_CALL_ARGS_2(obj, &v);
1900  if (SWIG_IsOK(res)) {
1901  if ((v < INT_MIN || v > INT_MAX)) {
1902  return SWIG_OverflowError;
1903  } else {
1904  if (val) *val = static_cast< int >(v);
1905  }
1906  }
1907  return res;
1908 }
1909 
1910 
1911 #include "a_triangle.h"
1912 
1913 
1914 #include "a_circle.h"
1915 
1916 #ifdef __cplusplus
1917 extern "C" {
1918 #endif
1919 SWIGINTERN int
1920 _wrap_a_base_classname(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
1921  a_base *arg1 = (a_base *) 0 ;
1922  void *argp1 = 0 ;
1923  int res1 = 0 ;
1924  std::string result;
1925 
1926  if (SWIG_GetArgs(interp, objc, objv,"o:a_base_classname self ",(void *)0) == TCL_ERROR) SWIG_fail;
1927  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_base, 0 | 0 );
1928  if (!SWIG_IsOK(res1)) {
1929  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_base_classname" "', argument " "1"" of type '" "a_base *""'");
1930  }
1931  arg1 = reinterpret_cast< a_base * >(argp1);
1932  result = (arg1)->classname();
1933  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
1934  return TCL_OK;
1935 fail:
1936  return TCL_ERROR;
1937 }
1938 
1939 
1940 SWIGINTERN int
1941 _wrap_a_base_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
1942  std::string result;
1943 
1944  if (SWIG_GetArgs(interp, objc, objv,":a_base_help ") == TCL_ERROR) SWIG_fail;
1945  result = a_base::help();
1946  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
1947  return TCL_OK;
1948 fail:
1949  return TCL_ERROR;
1950 }
1951 
1952 
1953 SWIGINTERN int
1954 _wrap_a_base_small__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
1955  a_base *arg1 = (a_base *) 0 ;
1956  double arg2 ;
1957  void *argp1 = 0 ;
1958  int res1 = 0 ;
1959  double val2 ;
1960  int ecode2 = 0 ;
1961 
1962  if (SWIG_GetArgs(interp, objc, objv,"oo:a_base_small self tol ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
1963  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_base, 0 | 0 );
1964  if (!SWIG_IsOK(res1)) {
1965  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_base_small" "', argument " "1"" of type '" "a_base *""'");
1966  }
1967  arg1 = reinterpret_cast< a_base * >(argp1);
1968  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
1969  if (!SWIG_IsOK(ecode2)) {
1970  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_base_small" "', argument " "2"" of type '" "double""'");
1971  }
1972  arg2 = static_cast< double >(val2);
1973  (arg1)->small(arg2);
1974 
1975  return TCL_OK;
1976 fail:
1977  return TCL_ERROR;
1978 }
1979 
1980 
1981 SWIGINTERN int
1982 _wrap_a_base_small__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
1983  a_base *arg1 = (a_base *) 0 ;
1984  void *argp1 = 0 ;
1985  int res1 = 0 ;
1986  double result;
1987 
1988  if (SWIG_GetArgs(interp, objc, objv,"o:a_base_small self ",(void *)0) == TCL_ERROR) SWIG_fail;
1989  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_base, 0 | 0 );
1990  if (!SWIG_IsOK(res1)) {
1991  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_base_small" "', argument " "1"" of type '" "a_base const *""'");
1992  }
1993  arg1 = reinterpret_cast< a_base * >(argp1);
1994  result = (double)((a_base const *)arg1)->small();
1995  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
1996  return TCL_OK;
1997 fail:
1998  return TCL_ERROR;
1999 }
2000 
2001 
2002 SWIGINTERN int
2003 _wrap_a_base_small(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2004  Tcl_Obj *CONST *argv = objv+1;
2005  int argc = objc-1;
2006  if (argc == 1) {
2007  int _v;
2008  void *vptr = 0;
2009  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_base, 0);
2010  _v = SWIG_CheckState(res);
2011  if (_v) {
2012  return _wrap_a_base_small__SWIG_1(clientData, interp, objc, argv - 1);
2013  }
2014  }
2015  if (argc == 2) {
2016  int _v;
2017  void *vptr = 0;
2018  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_base, 0);
2019  _v = SWIG_CheckState(res);
2020  if (_v) {
2021  {
2022  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
2023  _v = SWIG_CheckState(res);
2024  }
2025  if (_v) {
2026  return _wrap_a_base_small__SWIG_0(clientData, interp, objc, argv - 1);
2027  }
2028  }
2029  }
2030 
2031  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_base_small'.\n"
2032  " Possible C/C++ prototypes are:\n"
2033  " a_base::small(double)\n"
2034  " a_base::small() const\n", TCL_STATIC);
2035  return TCL_ERROR;
2036 }
2037 
2038 
2039 SWIGINTERN int
2040 _wrap_a_base_print(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2041  a_base *arg1 = (a_base *) 0 ;
2042  void *argp1 = 0 ;
2043  int res1 = 0 ;
2044  std::string result;
2045 
2046  if (SWIG_GetArgs(interp, objc, objv,"o:a_base_print self ",(void *)0) == TCL_ERROR) SWIG_fail;
2047  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_base, 0 | 0 );
2048  if (!SWIG_IsOK(res1)) {
2049  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_base_print" "', argument " "1"" of type '" "a_base *""'");
2050  }
2051  arg1 = reinterpret_cast< a_base * >(argp1);
2052  result = a_base_print(arg1);
2053  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
2054  return TCL_OK;
2055 fail:
2056  return TCL_ERROR;
2057 }
2058 
2059 
2060 SWIGINTERN int
2061 _wrap_new_a_base(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2062  a_base *result = 0 ;
2063 
2064  if (SWIG_GetArgs(interp, objc, objv,":new_a_base ") == TCL_ERROR) SWIG_fail;
2065  result = (a_base *)new a_base();
2066  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_base,0));
2067  return TCL_OK;
2068 fail:
2069  return TCL_ERROR;
2070 }
2071 
2072 
2073 SWIGINTERN int
2074 _wrap_delete_a_base(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2075  a_base *arg1 = (a_base *) 0 ;
2076  void *argp1 = 0 ;
2077  int res1 = 0 ;
2078 
2079  if (SWIG_GetArgs(interp, objc, objv,"o:delete_a_base self ",(void *)0) == TCL_ERROR) SWIG_fail;
2080  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_base, SWIG_POINTER_DISOWN | 0 );
2081  if (!SWIG_IsOK(res1)) {
2082  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_a_base" "', argument " "1"" of type '" "a_base *""'");
2083  }
2084  arg1 = reinterpret_cast< a_base * >(argp1);
2085  delete arg1;
2086 
2087  return TCL_OK;
2088 fail:
2089  return TCL_ERROR;
2090 }
2091 
2092 
2094 a_base *arg1 = (a_base *) obj;
2095 delete arg1;
2096 }
2098  {"classname", _wrap_a_base_classname},
2099  {"small", _wrap_a_base_small},
2100  {"print", _wrap_a_base_print},
2101  {0,0}
2102 };
2104  {0,0,0}
2105 };
2107 static const char * swig_a_base_base_names[] = {0};
2109 SWIGINTERN int
2110 _wrap_new_a_3dh__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2111  a_3dh *result = 0 ;
2112 
2113  if (SWIG_GetArgs(interp, objc, objv,":new_a_3dh ") == TCL_ERROR) SWIG_fail;
2114  result = (a_3dh *)new a_3dh();
2115  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_3dh,0));
2116  return TCL_OK;
2117 fail:
2118  return TCL_ERROR;
2119 }
2120 
2121 
2122 SWIGINTERN int
2123 _wrap_new_a_3dh__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2124  double arg1 ;
2125  double arg2 ;
2126  double arg3 ;
2127  double arg4 ;
2128  double val1 ;
2129  int ecode1 = 0 ;
2130  double val2 ;
2131  int ecode2 = 0 ;
2132  double val3 ;
2133  int ecode3 = 0 ;
2134  double val4 ;
2135  int ecode4 = 0 ;
2136  a_3dh *result = 0 ;
2137 
2138  if (SWIG_GetArgs(interp, objc, objv,"oooo:new_a_3dh x y z t ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
2139  ecode1 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[1], &val1);
2140  if (!SWIG_IsOK(ecode1)) {
2141  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_a_3dh" "', argument " "1"" of type '" "double""'");
2142  }
2143  arg1 = static_cast< double >(val1);
2144  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
2145  if (!SWIG_IsOK(ecode2)) {
2146  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_a_3dh" "', argument " "2"" of type '" "double""'");
2147  }
2148  arg2 = static_cast< double >(val2);
2149  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
2150  if (!SWIG_IsOK(ecode3)) {
2151  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_a_3dh" "', argument " "3"" of type '" "double""'");
2152  }
2153  arg3 = static_cast< double >(val3);
2154  ecode4 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[4], &val4);
2155  if (!SWIG_IsOK(ecode4)) {
2156  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_a_3dh" "', argument " "4"" of type '" "double""'");
2157  }
2158  arg4 = static_cast< double >(val4);
2159  result = (a_3dh *)new a_3dh(arg1,arg2,arg3,arg4);
2160  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_3dh,0));
2161  return TCL_OK;
2162 fail:
2163  return TCL_ERROR;
2164 }
2165 
2166 
2167 SWIGINTERN int
2168 _wrap_new_a_3dh__SWIG_2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2169  double arg1 ;
2170  double arg2 ;
2171  double arg3 ;
2172  double val1 ;
2173  int ecode1 = 0 ;
2174  double val2 ;
2175  int ecode2 = 0 ;
2176  double val3 ;
2177  int ecode3 = 0 ;
2178  a_3dh *result = 0 ;
2179 
2180  if (SWIG_GetArgs(interp, objc, objv,"ooo:new_a_3dh x y z ",(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
2181  ecode1 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[1], &val1);
2182  if (!SWIG_IsOK(ecode1)) {
2183  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_a_3dh" "', argument " "1"" of type '" "double""'");
2184  }
2185  arg1 = static_cast< double >(val1);
2186  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
2187  if (!SWIG_IsOK(ecode2)) {
2188  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_a_3dh" "', argument " "2"" of type '" "double""'");
2189  }
2190  arg2 = static_cast< double >(val2);
2191  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
2192  if (!SWIG_IsOK(ecode3)) {
2193  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_a_3dh" "', argument " "3"" of type '" "double""'");
2194  }
2195  arg3 = static_cast< double >(val3);
2196  result = (a_3dh *)new a_3dh(arg1,arg2,arg3);
2197  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_3dh,0));
2198  return TCL_OK;
2199 fail:
2200  return TCL_ERROR;
2201 }
2202 
2203 
2204 SWIGINTERN int
2205 _wrap_new_a_3dh__SWIG_3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2206  double *arg1 = (double *) 0 ;
2207  void *argp1 = 0 ;
2208  int res1 = 0 ;
2209  a_3dh *result = 0 ;
2210 
2211  if (SWIG_GetArgs(interp, objc, objv,"o:new_a_3dh x ",(void *)0) == TCL_ERROR) SWIG_fail;
2212  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_double, 0 | 0 );
2213  if (!SWIG_IsOK(res1)) {
2214  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_a_3dh" "', argument " "1"" of type '" "double *""'");
2215  }
2216  arg1 = reinterpret_cast< double * >(argp1);
2217  result = (a_3dh *)new a_3dh(arg1);
2218  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_3dh,0));
2219  return TCL_OK;
2220 fail:
2221  return TCL_ERROR;
2222 }
2223 
2224 
2225 SWIGINTERN int
2226 _wrap_new_a_3dh__SWIG_4(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2227  a_point *arg1 = 0 ;
2228  void *argp1 ;
2229  int res1 = 0 ;
2230  a_3dh *result = 0 ;
2231 
2232  if (SWIG_GetArgs(interp, objc, objv,"o:new_a_3dh a_point const & ",(void *)0) == TCL_ERROR) SWIG_fail;
2233  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point, 0 );
2234  if (!SWIG_IsOK(res1)) {
2235  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_a_3dh" "', argument " "1"" of type '" "a_point const &""'");
2236  }
2237  if (!argp1) {
2238  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_3dh" "', argument " "1"" of type '" "a_point const &""'");
2239  }
2240  arg1 = reinterpret_cast< a_point * >(argp1);
2241  result = (a_3dh *)new a_3dh((a_point const &)*arg1);
2242  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_3dh,0));
2243  return TCL_OK;
2244 fail:
2245  return TCL_ERROR;
2246 }
2247 
2248 
2249 SWIGINTERN int
2250 _wrap_new_a_3dh__SWIG_5(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2251  a_mat *arg1 = 0 ;
2252  void *argp1 ;
2253  int res1 = 0 ;
2254  a_3dh *result = 0 ;
2255 
2256  if (SWIG_GetArgs(interp, objc, objv,"o:new_a_3dh m ",(void *)0) == TCL_ERROR) SWIG_fail;
2257  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_mat, 0 );
2258  if (!SWIG_IsOK(res1)) {
2259  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_a_3dh" "', argument " "1"" of type '" "a_mat const &""'");
2260  }
2261  if (!argp1) {
2262  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_3dh" "', argument " "1"" of type '" "a_mat const &""'");
2263  }
2264  arg1 = reinterpret_cast< a_mat * >(argp1);
2265  result = (a_3dh *)new a_3dh((a_mat const &)*arg1);
2266  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_3dh,0));
2267  return TCL_OK;
2268 fail:
2269  return TCL_ERROR;
2270 }
2271 
2272 
2273 SWIGINTERN int
2274 _wrap_new_a_3dh(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2275  Tcl_Obj *CONST *argv = objv+1;
2276  int argc = objc-1;
2277  if (argc == 0) {
2278  return _wrap_new_a_3dh__SWIG_0(clientData, interp, objc, argv - 1);
2279  }
2280  if (argc == 1) {
2281  int _v;
2282  void *vptr = 0;
2283  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_double, 0);
2284  _v = SWIG_CheckState(res);
2285  if (_v) {
2286  return _wrap_new_a_3dh__SWIG_3(clientData, interp, objc, argv - 1);
2287  }
2288  }
2289  if (argc == 1) {
2290  int _v;
2291  void *vptr = 0;
2292  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
2293  _v = SWIG_CheckState(res);
2294  if (_v) {
2295  return _wrap_new_a_3dh__SWIG_4(clientData, interp, objc, argv - 1);
2296  }
2297  }
2298  if (argc == 1) {
2299  int _v;
2300  void *vptr = 0;
2301  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_mat, SWIG_POINTER_NO_NULL);
2302  _v = SWIG_CheckState(res);
2303  if (_v) {
2304  return _wrap_new_a_3dh__SWIG_5(clientData, interp, objc, argv - 1);
2305  }
2306  }
2307  if (argc == 3) {
2308  int _v;
2309  {
2310  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[0], NULL);
2311  _v = SWIG_CheckState(res);
2312  }
2313  if (_v) {
2314  {
2315  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
2316  _v = SWIG_CheckState(res);
2317  }
2318  if (_v) {
2319  {
2320  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[2], NULL);
2321  _v = SWIG_CheckState(res);
2322  }
2323  if (_v) {
2324  return _wrap_new_a_3dh__SWIG_2(clientData, interp, objc, argv - 1);
2325  }
2326  }
2327  }
2328  }
2329  if (argc == 4) {
2330  int _v;
2331  {
2332  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[0], NULL);
2333  _v = SWIG_CheckState(res);
2334  }
2335  if (_v) {
2336  {
2337  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
2338  _v = SWIG_CheckState(res);
2339  }
2340  if (_v) {
2341  {
2342  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[2], NULL);
2343  _v = SWIG_CheckState(res);
2344  }
2345  if (_v) {
2346  {
2347  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[3], NULL);
2348  _v = SWIG_CheckState(res);
2349  }
2350  if (_v) {
2351  return _wrap_new_a_3dh__SWIG_1(clientData, interp, objc, argv - 1);
2352  }
2353  }
2354  }
2355  }
2356  }
2357 
2358  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'new_a_3dh'.\n"
2359  " Possible C/C++ prototypes are:\n"
2360  " a_3dh::a_3dh()\n"
2361  " a_3dh::a_3dh(double,double,double,double)\n"
2362  " a_3dh::a_3dh(double,double,double)\n"
2363  " a_3dh::a_3dh(double *)\n"
2364  " a_3dh::a_3dh(a_point const &)\n"
2365  " a_3dh::a_3dh(a_mat const &)\n", TCL_STATIC);
2366  return TCL_ERROR;
2367 }
2368 
2369 
2370 SWIGINTERN int
2371 _wrap_a_3dh_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2372  std::string result;
2373 
2374  if (SWIG_GetArgs(interp, objc, objv,":a_3dh_help ") == TCL_ERROR) SWIG_fail;
2375  result = a_3dh::help();
2376  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
2377  return TCL_OK;
2378 fail:
2379  return TCL_ERROR;
2380 }
2381 
2382 
2383 SWIGINTERN int
2384 _wrap_a_3dh_X__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2385  a_3dh *arg1 = (a_3dh *) 0 ;
2386  double arg2 ;
2387  void *argp1 = 0 ;
2388  int res1 = 0 ;
2389  double val2 ;
2390  int ecode2 = 0 ;
2391 
2392  if (SWIG_GetArgs(interp, objc, objv,"oo:a_3dh_X self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
2393  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
2394  if (!SWIG_IsOK(res1)) {
2395  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_X" "', argument " "1"" of type '" "a_3dh *""'");
2396  }
2397  arg1 = reinterpret_cast< a_3dh * >(argp1);
2398  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
2399  if (!SWIG_IsOK(ecode2)) {
2400  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_3dh_X" "', argument " "2"" of type '" "double""'");
2401  }
2402  arg2 = static_cast< double >(val2);
2403  (arg1)->X(arg2);
2404 
2405  return TCL_OK;
2406 fail:
2407  return TCL_ERROR;
2408 }
2409 
2410 
2411 SWIGINTERN int
2412 _wrap_a_3dh_Y__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2413  a_3dh *arg1 = (a_3dh *) 0 ;
2414  double arg2 ;
2415  void *argp1 = 0 ;
2416  int res1 = 0 ;
2417  double val2 ;
2418  int ecode2 = 0 ;
2419 
2420  if (SWIG_GetArgs(interp, objc, objv,"oo:a_3dh_Y self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
2421  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
2422  if (!SWIG_IsOK(res1)) {
2423  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_Y" "', argument " "1"" of type '" "a_3dh *""'");
2424  }
2425  arg1 = reinterpret_cast< a_3dh * >(argp1);
2426  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
2427  if (!SWIG_IsOK(ecode2)) {
2428  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_3dh_Y" "', argument " "2"" of type '" "double""'");
2429  }
2430  arg2 = static_cast< double >(val2);
2431  (arg1)->Y(arg2);
2432 
2433  return TCL_OK;
2434 fail:
2435  return TCL_ERROR;
2436 }
2437 
2438 
2439 SWIGINTERN int
2440 _wrap_a_3dh_Z__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2441  a_3dh *arg1 = (a_3dh *) 0 ;
2442  double arg2 ;
2443  void *argp1 = 0 ;
2444  int res1 = 0 ;
2445  double val2 ;
2446  int ecode2 = 0 ;
2447 
2448  if (SWIG_GetArgs(interp, objc, objv,"oo:a_3dh_Z self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
2449  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
2450  if (!SWIG_IsOK(res1)) {
2451  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_Z" "', argument " "1"" of type '" "a_3dh *""'");
2452  }
2453  arg1 = reinterpret_cast< a_3dh * >(argp1);
2454  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
2455  if (!SWIG_IsOK(ecode2)) {
2456  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_3dh_Z" "', argument " "2"" of type '" "double""'");
2457  }
2458  arg2 = static_cast< double >(val2);
2459  (arg1)->Z(arg2);
2460 
2461  return TCL_OK;
2462 fail:
2463  return TCL_ERROR;
2464 }
2465 
2466 
2467 SWIGINTERN int
2468 _wrap_a_3dh_T__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2469  a_3dh *arg1 = (a_3dh *) 0 ;
2470  double arg2 ;
2471  void *argp1 = 0 ;
2472  int res1 = 0 ;
2473  double val2 ;
2474  int ecode2 = 0 ;
2475 
2476  if (SWIG_GetArgs(interp, objc, objv,"oo:a_3dh_T self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
2477  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
2478  if (!SWIG_IsOK(res1)) {
2479  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_T" "', argument " "1"" of type '" "a_3dh *""'");
2480  }
2481  arg1 = reinterpret_cast< a_3dh * >(argp1);
2482  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
2483  if (!SWIG_IsOK(ecode2)) {
2484  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_3dh_T" "', argument " "2"" of type '" "double""'");
2485  }
2486  arg2 = static_cast< double >(val2);
2487  (arg1)->T(arg2);
2488 
2489  return TCL_OK;
2490 fail:
2491  return TCL_ERROR;
2492 }
2493 
2494 
2495 SWIGINTERN int
2496 _wrap_a_3dh_X__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2497  a_3dh *arg1 = (a_3dh *) 0 ;
2498  void *argp1 = 0 ;
2499  int res1 = 0 ;
2500  double result;
2501 
2502  if (SWIG_GetArgs(interp, objc, objv,"o:a_3dh_X self ",(void *)0) == TCL_ERROR) SWIG_fail;
2503  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
2504  if (!SWIG_IsOK(res1)) {
2505  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_X" "', argument " "1"" of type '" "a_3dh const *""'");
2506  }
2507  arg1 = reinterpret_cast< a_3dh * >(argp1);
2508  result = (double)((a_3dh const *)arg1)->X();
2509  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
2510  return TCL_OK;
2511 fail:
2512  return TCL_ERROR;
2513 }
2514 
2515 
2516 SWIGINTERN int
2517 _wrap_a_3dh_X(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2518  Tcl_Obj *CONST *argv = objv+1;
2519  int argc = objc-1;
2520  if (argc == 1) {
2521  int _v;
2522  void *vptr = 0;
2523  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_3dh, 0);
2524  _v = SWIG_CheckState(res);
2525  if (_v) {
2526  return _wrap_a_3dh_X__SWIG_1(clientData, interp, objc, argv - 1);
2527  }
2528  }
2529  if (argc == 2) {
2530  int _v;
2531  void *vptr = 0;
2532  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_3dh, 0);
2533  _v = SWIG_CheckState(res);
2534  if (_v) {
2535  {
2536  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
2537  _v = SWIG_CheckState(res);
2538  }
2539  if (_v) {
2540  return _wrap_a_3dh_X__SWIG_0(clientData, interp, objc, argv - 1);
2541  }
2542  }
2543  }
2544 
2545  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_3dh_X'.\n"
2546  " Possible C/C++ prototypes are:\n"
2547  " a_3dh::X(double)\n"
2548  " a_3dh::X() const\n", TCL_STATIC);
2549  return TCL_ERROR;
2550 }
2551 
2552 
2553 SWIGINTERN int
2554 _wrap_a_3dh_Y__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2555  a_3dh *arg1 = (a_3dh *) 0 ;
2556  void *argp1 = 0 ;
2557  int res1 = 0 ;
2558  double result;
2559 
2560  if (SWIG_GetArgs(interp, objc, objv,"o:a_3dh_Y self ",(void *)0) == TCL_ERROR) SWIG_fail;
2561  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
2562  if (!SWIG_IsOK(res1)) {
2563  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_Y" "', argument " "1"" of type '" "a_3dh const *""'");
2564  }
2565  arg1 = reinterpret_cast< a_3dh * >(argp1);
2566  result = (double)((a_3dh const *)arg1)->Y();
2567  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
2568  return TCL_OK;
2569 fail:
2570  return TCL_ERROR;
2571 }
2572 
2573 
2574 SWIGINTERN int
2575 _wrap_a_3dh_Y(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2576  Tcl_Obj *CONST *argv = objv+1;
2577  int argc = objc-1;
2578  if (argc == 1) {
2579  int _v;
2580  void *vptr = 0;
2581  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_3dh, 0);
2582  _v = SWIG_CheckState(res);
2583  if (_v) {
2584  return _wrap_a_3dh_Y__SWIG_1(clientData, interp, objc, argv - 1);
2585  }
2586  }
2587  if (argc == 2) {
2588  int _v;
2589  void *vptr = 0;
2590  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_3dh, 0);
2591  _v = SWIG_CheckState(res);
2592  if (_v) {
2593  {
2594  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
2595  _v = SWIG_CheckState(res);
2596  }
2597  if (_v) {
2598  return _wrap_a_3dh_Y__SWIG_0(clientData, interp, objc, argv - 1);
2599  }
2600  }
2601  }
2602 
2603  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_3dh_Y'.\n"
2604  " Possible C/C++ prototypes are:\n"
2605  " a_3dh::Y(double)\n"
2606  " a_3dh::Y() const\n", TCL_STATIC);
2607  return TCL_ERROR;
2608 }
2609 
2610 
2611 SWIGINTERN int
2612 _wrap_a_3dh_Z__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2613  a_3dh *arg1 = (a_3dh *) 0 ;
2614  void *argp1 = 0 ;
2615  int res1 = 0 ;
2616  double result;
2617 
2618  if (SWIG_GetArgs(interp, objc, objv,"o:a_3dh_Z self ",(void *)0) == TCL_ERROR) SWIG_fail;
2619  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
2620  if (!SWIG_IsOK(res1)) {
2621  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_Z" "', argument " "1"" of type '" "a_3dh const *""'");
2622  }
2623  arg1 = reinterpret_cast< a_3dh * >(argp1);
2624  result = (double)((a_3dh const *)arg1)->Z();
2625  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
2626  return TCL_OK;
2627 fail:
2628  return TCL_ERROR;
2629 }
2630 
2631 
2632 SWIGINTERN int
2633 _wrap_a_3dh_Z(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2634  Tcl_Obj *CONST *argv = objv+1;
2635  int argc = objc-1;
2636  if (argc == 1) {
2637  int _v;
2638  void *vptr = 0;
2639  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_3dh, 0);
2640  _v = SWIG_CheckState(res);
2641  if (_v) {
2642  return _wrap_a_3dh_Z__SWIG_1(clientData, interp, objc, argv - 1);
2643  }
2644  }
2645  if (argc == 2) {
2646  int _v;
2647  void *vptr = 0;
2648  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_3dh, 0);
2649  _v = SWIG_CheckState(res);
2650  if (_v) {
2651  {
2652  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
2653  _v = SWIG_CheckState(res);
2654  }
2655  if (_v) {
2656  return _wrap_a_3dh_Z__SWIG_0(clientData, interp, objc, argv - 1);
2657  }
2658  }
2659  }
2660 
2661  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_3dh_Z'.\n"
2662  " Possible C/C++ prototypes are:\n"
2663  " a_3dh::Z(double)\n"
2664  " a_3dh::Z() const\n", TCL_STATIC);
2665  return TCL_ERROR;
2666 }
2667 
2668 
2669 SWIGINTERN int
2670 _wrap_a_3dh_T__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2671  a_3dh *arg1 = (a_3dh *) 0 ;
2672  void *argp1 = 0 ;
2673  int res1 = 0 ;
2674  double result;
2675 
2676  if (SWIG_GetArgs(interp, objc, objv,"o:a_3dh_T self ",(void *)0) == TCL_ERROR) SWIG_fail;
2677  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
2678  if (!SWIG_IsOK(res1)) {
2679  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_T" "', argument " "1"" of type '" "a_3dh const *""'");
2680  }
2681  arg1 = reinterpret_cast< a_3dh * >(argp1);
2682  result = (double)((a_3dh const *)arg1)->T();
2683  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
2684  return TCL_OK;
2685 fail:
2686  return TCL_ERROR;
2687 }
2688 
2689 
2690 SWIGINTERN int
2691 _wrap_a_3dh_T(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2692  Tcl_Obj *CONST *argv = objv+1;
2693  int argc = objc-1;
2694  if (argc == 1) {
2695  int _v;
2696  void *vptr = 0;
2697  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_3dh, 0);
2698  _v = SWIG_CheckState(res);
2699  if (_v) {
2700  return _wrap_a_3dh_T__SWIG_1(clientData, interp, objc, argv - 1);
2701  }
2702  }
2703  if (argc == 2) {
2704  int _v;
2705  void *vptr = 0;
2706  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_3dh, 0);
2707  _v = SWIG_CheckState(res);
2708  if (_v) {
2709  {
2710  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
2711  _v = SWIG_CheckState(res);
2712  }
2713  if (_v) {
2714  return _wrap_a_3dh_T__SWIG_0(clientData, interp, objc, argv - 1);
2715  }
2716  }
2717  }
2718 
2719  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_3dh_T'.\n"
2720  " Possible C/C++ prototypes are:\n"
2721  " a_3dh::T(double)\n"
2722  " a_3dh::T() const\n", TCL_STATIC);
2723  return TCL_ERROR;
2724 }
2725 
2726 
2727 SWIGINTERN int
2728 _wrap_a_3dh_x(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2729  a_3dh *arg1 = (a_3dh *) 0 ;
2730  void *argp1 = 0 ;
2731  int res1 = 0 ;
2732  double result;
2733 
2734  if (SWIG_GetArgs(interp, objc, objv,"o:a_3dh_x self ",(void *)0) == TCL_ERROR) SWIG_fail;
2735  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
2736  if (!SWIG_IsOK(res1)) {
2737  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_x" "', argument " "1"" of type '" "a_3dh const *""'");
2738  }
2739  arg1 = reinterpret_cast< a_3dh * >(argp1);
2740  result = (double)((a_3dh const *)arg1)->x();
2741  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
2742  return TCL_OK;
2743 fail:
2744  return TCL_ERROR;
2745 }
2746 
2747 
2748 SWIGINTERN int
2749 _wrap_a_3dh_y(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2750  a_3dh *arg1 = (a_3dh *) 0 ;
2751  void *argp1 = 0 ;
2752  int res1 = 0 ;
2753  double result;
2754 
2755  if (SWIG_GetArgs(interp, objc, objv,"o:a_3dh_y self ",(void *)0) == TCL_ERROR) SWIG_fail;
2756  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
2757  if (!SWIG_IsOK(res1)) {
2758  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_y" "', argument " "1"" of type '" "a_3dh const *""'");
2759  }
2760  arg1 = reinterpret_cast< a_3dh * >(argp1);
2761  result = (double)((a_3dh const *)arg1)->y();
2762  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
2763  return TCL_OK;
2764 fail:
2765  return TCL_ERROR;
2766 }
2767 
2768 
2769 SWIGINTERN int
2770 _wrap_a_3dh_z(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2771  a_3dh *arg1 = (a_3dh *) 0 ;
2772  void *argp1 = 0 ;
2773  int res1 = 0 ;
2774  double result;
2775 
2776  if (SWIG_GetArgs(interp, objc, objv,"o:a_3dh_z self ",(void *)0) == TCL_ERROR) SWIG_fail;
2777  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
2778  if (!SWIG_IsOK(res1)) {
2779  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_z" "', argument " "1"" of type '" "a_3dh const *""'");
2780  }
2781  arg1 = reinterpret_cast< a_3dh * >(argp1);
2782  result = (double)((a_3dh const *)arg1)->z();
2783  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
2784  return TCL_OK;
2785 fail:
2786  return TCL_ERROR;
2787 }
2788 
2789 
2790 SWIGINTERN int
2791 _wrap_a_3dh_set__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2792  a_3dh *arg1 = (a_3dh *) 0 ;
2793  double arg2 ;
2794  double arg3 ;
2795  double arg4 ;
2796  double arg5 ;
2797  void *argp1 = 0 ;
2798  int res1 = 0 ;
2799  double val2 ;
2800  int ecode2 = 0 ;
2801  double val3 ;
2802  int ecode3 = 0 ;
2803  double val4 ;
2804  int ecode4 = 0 ;
2805  double val5 ;
2806  int ecode5 = 0 ;
2807 
2808  if (SWIG_GetArgs(interp, objc, objv,"ooooo:a_3dh_set self x y z t ",(void *)0,(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
2809  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
2810  if (!SWIG_IsOK(res1)) {
2811  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_set" "', argument " "1"" of type '" "a_3dh *""'");
2812  }
2813  arg1 = reinterpret_cast< a_3dh * >(argp1);
2814  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
2815  if (!SWIG_IsOK(ecode2)) {
2816  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_3dh_set" "', argument " "2"" of type '" "double""'");
2817  }
2818  arg2 = static_cast< double >(val2);
2819  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
2820  if (!SWIG_IsOK(ecode3)) {
2821  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "a_3dh_set" "', argument " "3"" of type '" "double""'");
2822  }
2823  arg3 = static_cast< double >(val3);
2824  ecode4 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[4], &val4);
2825  if (!SWIG_IsOK(ecode4)) {
2826  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "a_3dh_set" "', argument " "4"" of type '" "double""'");
2827  }
2828  arg4 = static_cast< double >(val4);
2829  ecode5 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[5], &val5);
2830  if (!SWIG_IsOK(ecode5)) {
2831  SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "a_3dh_set" "', argument " "5"" of type '" "double""'");
2832  }
2833  arg5 = static_cast< double >(val5);
2834  (arg1)->set(arg2,arg3,arg4,arg5);
2835 
2836  return TCL_OK;
2837 fail:
2838  return TCL_ERROR;
2839 }
2840 
2841 
2842 SWIGINTERN int
2843 _wrap_a_3dh_set__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2844  a_3dh *arg1 = (a_3dh *) 0 ;
2845  double arg2 ;
2846  double arg3 ;
2847  double arg4 ;
2848  void *argp1 = 0 ;
2849  int res1 = 0 ;
2850  double val2 ;
2851  int ecode2 = 0 ;
2852  double val3 ;
2853  int ecode3 = 0 ;
2854  double val4 ;
2855  int ecode4 = 0 ;
2856 
2857  if (SWIG_GetArgs(interp, objc, objv,"oooo:a_3dh_set self x y z ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
2858  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
2859  if (!SWIG_IsOK(res1)) {
2860  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_set" "', argument " "1"" of type '" "a_3dh *""'");
2861  }
2862  arg1 = reinterpret_cast< a_3dh * >(argp1);
2863  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
2864  if (!SWIG_IsOK(ecode2)) {
2865  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_3dh_set" "', argument " "2"" of type '" "double""'");
2866  }
2867  arg2 = static_cast< double >(val2);
2868  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
2869  if (!SWIG_IsOK(ecode3)) {
2870  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "a_3dh_set" "', argument " "3"" of type '" "double""'");
2871  }
2872  arg3 = static_cast< double >(val3);
2873  ecode4 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[4], &val4);
2874  if (!SWIG_IsOK(ecode4)) {
2875  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "a_3dh_set" "', argument " "4"" of type '" "double""'");
2876  }
2877  arg4 = static_cast< double >(val4);
2878  (arg1)->set(arg2,arg3,arg4);
2879 
2880  return TCL_OK;
2881 fail:
2882  return TCL_ERROR;
2883 }
2884 
2885 
2886 SWIGINTERN int
2887 _wrap_a_3dh_set__SWIG_2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2888  a_3dh *arg1 = (a_3dh *) 0 ;
2889  double *arg2 = (double *) 0 ;
2890  void *argp1 = 0 ;
2891  int res1 = 0 ;
2892  void *argp2 = 0 ;
2893  int res2 = 0 ;
2894 
2895  if (SWIG_GetArgs(interp, objc, objv,"oo:a_3dh_set self x ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
2896  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
2897  if (!SWIG_IsOK(res1)) {
2898  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_set" "', argument " "1"" of type '" "a_3dh *""'");
2899  }
2900  arg1 = reinterpret_cast< a_3dh * >(argp1);
2901  res2 = SWIG_ConvertPtr(objv[2], &argp2,SWIGTYPE_p_double, 0 | 0 );
2902  if (!SWIG_IsOK(res2)) {
2903  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_3dh_set" "', argument " "2"" of type '" "double *""'");
2904  }
2905  arg2 = reinterpret_cast< double * >(argp2);
2906  (arg1)->set(arg2);
2907 
2908  return TCL_OK;
2909 fail:
2910  return TCL_ERROR;
2911 }
2912 
2913 
2914 SWIGINTERN int
2915 _wrap_a_3dh_set__SWIG_3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2916  a_3dh *arg1 = (a_3dh *) 0 ;
2917  a_point *arg2 = 0 ;
2918  void *argp1 = 0 ;
2919  int res1 = 0 ;
2920  void *argp2 ;
2921  int res2 = 0 ;
2922 
2923  if (SWIG_GetArgs(interp, objc, objv,"oo:a_3dh_set self a_point const & ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
2924  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
2925  if (!SWIG_IsOK(res1)) {
2926  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_set" "', argument " "1"" of type '" "a_3dh *""'");
2927  }
2928  arg1 = reinterpret_cast< a_3dh * >(argp1);
2929  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
2930  if (!SWIG_IsOK(res2)) {
2931  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_3dh_set" "', argument " "2"" of type '" "a_point const &""'");
2932  }
2933  if (!argp2) {
2934  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_3dh_set" "', argument " "2"" of type '" "a_point const &""'");
2935  }
2936  arg2 = reinterpret_cast< a_point * >(argp2);
2937  (arg1)->set((a_point const &)*arg2);
2938 
2939  return TCL_OK;
2940 fail:
2941  return TCL_ERROR;
2942 }
2943 
2944 
2945 SWIGINTERN int
2946 _wrap_a_3dh_set(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
2947  Tcl_Obj *CONST *argv = objv+1;
2948  int argc = objc-1;
2949  if (argc == 2) {
2950  int _v;
2951  void *vptr = 0;
2952  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_3dh, 0);
2953  _v = SWIG_CheckState(res);
2954  if (_v) {
2955  void *vptr = 0;
2956  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_double, 0);
2957  _v = SWIG_CheckState(res);
2958  if (_v) {
2959  return _wrap_a_3dh_set__SWIG_2(clientData, interp, objc, argv - 1);
2960  }
2961  }
2962  }
2963  if (argc == 2) {
2964  int _v;
2965  void *vptr = 0;
2966  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_3dh, 0);
2967  _v = SWIG_CheckState(res);
2968  if (_v) {
2969  void *vptr = 0;
2970  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
2971  _v = SWIG_CheckState(res);
2972  if (_v) {
2973  return _wrap_a_3dh_set__SWIG_3(clientData, interp, objc, argv - 1);
2974  }
2975  }
2976  }
2977  if (argc == 4) {
2978  int _v;
2979  void *vptr = 0;
2980  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_3dh, 0);
2981  _v = SWIG_CheckState(res);
2982  if (_v) {
2983  {
2984  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
2985  _v = SWIG_CheckState(res);
2986  }
2987  if (_v) {
2988  {
2989  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[2], NULL);
2990  _v = SWIG_CheckState(res);
2991  }
2992  if (_v) {
2993  {
2994  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[3], NULL);
2995  _v = SWIG_CheckState(res);
2996  }
2997  if (_v) {
2998  return _wrap_a_3dh_set__SWIG_1(clientData, interp, objc, argv - 1);
2999  }
3000  }
3001  }
3002  }
3003  }
3004  if (argc == 5) {
3005  int _v;
3006  void *vptr = 0;
3007  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_3dh, 0);
3008  _v = SWIG_CheckState(res);
3009  if (_v) {
3010  {
3011  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
3012  _v = SWIG_CheckState(res);
3013  }
3014  if (_v) {
3015  {
3016  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[2], NULL);
3017  _v = SWIG_CheckState(res);
3018  }
3019  if (_v) {
3020  {
3021  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[3], NULL);
3022  _v = SWIG_CheckState(res);
3023  }
3024  if (_v) {
3025  {
3026  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[4], NULL);
3027  _v = SWIG_CheckState(res);
3028  }
3029  if (_v) {
3030  return _wrap_a_3dh_set__SWIG_0(clientData, interp, objc, argv - 1);
3031  }
3032  }
3033  }
3034  }
3035  }
3036  }
3037 
3038  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_3dh_set'.\n"
3039  " Possible C/C++ prototypes are:\n"
3040  " a_3dh::set(double,double,double,double)\n"
3041  " a_3dh::set(double,double,double)\n"
3042  " a_3dh::set(double *)\n"
3043  " a_3dh::set(a_point const &)\n", TCL_STATIC);
3044  return TCL_ERROR;
3045 }
3046 
3047 
3048 SWIGINTERN int
3049 _wrap_a_3dh_point(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3050  a_3dh *arg1 = (a_3dh *) 0 ;
3051  void *argp1 = 0 ;
3052  int res1 = 0 ;
3053  a_point result;
3054 
3055  if (SWIG_GetArgs(interp, objc, objv,"o:a_3dh_point self ",(void *)0) == TCL_ERROR) SWIG_fail;
3056  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
3057  if (!SWIG_IsOK(res1)) {
3058  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_point" "', argument " "1"" of type '" "a_3dh const *""'");
3059  }
3060  arg1 = reinterpret_cast< a_3dh * >(argp1);
3061  result = ((a_3dh const *)arg1)->point();
3062  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
3063  return TCL_OK;
3064 fail:
3065  return TCL_ERROR;
3066 }
3067 
3068 
3069 SWIGINTERN int
3070 _wrap_a_3dh_print(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3071  a_3dh *arg1 = (a_3dh *) 0 ;
3072  void *argp1 = 0 ;
3073  int res1 = 0 ;
3074  std::string result;
3075 
3076  if (SWIG_GetArgs(interp, objc, objv,"o:a_3dh_print self ",(void *)0) == TCL_ERROR) SWIG_fail;
3077  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, 0 | 0 );
3078  if (!SWIG_IsOK(res1)) {
3079  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_3dh_print" "', argument " "1"" of type '" "a_3dh *""'");
3080  }
3081  arg1 = reinterpret_cast< a_3dh * >(argp1);
3082  result = a_3dh_print(arg1);
3083  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
3084  return TCL_OK;
3085 fail:
3086  return TCL_ERROR;
3087 }
3088 
3089 
3090 SWIGINTERN int
3091 _wrap_delete_a_3dh(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3092  a_3dh *arg1 = (a_3dh *) 0 ;
3093  void *argp1 = 0 ;
3094  int res1 = 0 ;
3095 
3096  if (SWIG_GetArgs(interp, objc, objv,"o:delete_a_3dh self ",(void *)0) == TCL_ERROR) SWIG_fail;
3097  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_3dh, SWIG_POINTER_DISOWN | 0 );
3098  if (!SWIG_IsOK(res1)) {
3099  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_a_3dh" "', argument " "1"" of type '" "a_3dh *""'");
3100  }
3101  arg1 = reinterpret_cast< a_3dh * >(argp1);
3102  delete arg1;
3103 
3104  return TCL_OK;
3105 fail:
3106  return TCL_ERROR;
3107 }
3108 
3109 
3111 a_3dh *arg1 = (a_3dh *) obj;
3112 delete arg1;
3113 }
3115  {"X", _wrap_a_3dh_X},
3116  {"Y", _wrap_a_3dh_Y},
3117  {"Z", _wrap_a_3dh_Z},
3118  {"T", _wrap_a_3dh_T},
3119  {"x", _wrap_a_3dh_x},
3120  {"y", _wrap_a_3dh_y},
3121  {"z", _wrap_a_3dh_z},
3122  {"set", _wrap_a_3dh_set},
3123  {"point", _wrap_a_3dh_point},
3124  {"print", _wrap_a_3dh_print},
3125  {0,0}
3126 };
3128  {0,0,0}
3129 };
3131 static const char * swig_a_3dh_base_names[] = {0};
3133 SWIGINTERN int
3134 _wrap_r2d(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3135  double arg1 ;
3136  double val1 ;
3137  int ecode1 = 0 ;
3138  double result;
3139 
3140  if (SWIG_GetArgs(interp, objc, objv,"o:r2d r ",(void *)0) == TCL_ERROR) SWIG_fail;
3141  ecode1 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[1], &val1);
3142  if (!SWIG_IsOK(ecode1)) {
3143  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "r2d" "', argument " "1"" of type '" "double""'");
3144  }
3145  arg1 = static_cast< double >(val1);
3146  result = (double)r2d(arg1);
3147  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
3148  return TCL_OK;
3149 fail:
3150  return TCL_ERROR;
3151 }
3152 
3153 
3154 SWIGINTERN int
3155 _wrap_d2r(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3156  double arg1 ;
3157  double val1 ;
3158  int ecode1 = 0 ;
3159  double result;
3160 
3161  if (SWIG_GetArgs(interp, objc, objv,"o:d2r d ",(void *)0) == TCL_ERROR) SWIG_fail;
3162  ecode1 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[1], &val1);
3163  if (!SWIG_IsOK(ecode1)) {
3164  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "d2r" "', argument " "1"" of type '" "double""'");
3165  }
3166  arg1 = static_cast< double >(val1);
3167  result = (double)d2r(arg1);
3168  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
3169  return TCL_OK;
3170 fail:
3171  return TCL_ERROR;
3172 }
3173 
3174 
3175 SWIGINTERN int
3176 _wrap_a_geom_base_classname(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3177  a_geom_base *arg1 = (a_geom_base *) 0 ;
3178  void *argp1 = 0 ;
3179  int res1 = 0 ;
3180  std::string result;
3181 
3182  if (SWIG_GetArgs(interp, objc, objv,"o:a_geom_base_classname self ",(void *)0) == TCL_ERROR) SWIG_fail;
3183  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_geom_base, 0 | 0 );
3184  if (!SWIG_IsOK(res1)) {
3185  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_geom_base_classname" "', argument " "1"" of type '" "a_geom_base *""'");
3186  }
3187  arg1 = reinterpret_cast< a_geom_base * >(argp1);
3188  result = (arg1)->classname();
3189  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
3190  return TCL_OK;
3191 fail:
3192  return TCL_ERROR;
3193 }
3194 
3195 
3196 SWIGINTERN int
3197 _wrap_a_geom_base_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3198  std::string result;
3199 
3200  if (SWIG_GetArgs(interp, objc, objv,":a_geom_base_help ") == TCL_ERROR) SWIG_fail;
3201  result = a_geom_base::help();
3202  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
3203  return TCL_OK;
3204 fail:
3205  return TCL_ERROR;
3206 }
3207 
3208 
3209 SWIGINTERN int
3210 _wrap_new_a_geom_base(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3211  a_geom_base *result = 0 ;
3212 
3213  if (SWIG_GetArgs(interp, objc, objv,":new_a_geom_base ") == TCL_ERROR) SWIG_fail;
3214  result = (a_geom_base *)new a_geom_base();
3215  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_geom_base,0));
3216  return TCL_OK;
3217 fail:
3218  return TCL_ERROR;
3219 }
3220 
3221 
3222 SWIGINTERN int
3223 _wrap_delete_a_geom_base(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3224  a_geom_base *arg1 = (a_geom_base *) 0 ;
3225  void *argp1 = 0 ;
3226  int res1 = 0 ;
3227 
3228  if (SWIG_GetArgs(interp, objc, objv,"o:delete_a_geom_base self ",(void *)0) == TCL_ERROR) SWIG_fail;
3229  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_geom_base, SWIG_POINTER_DISOWN | 0 );
3230  if (!SWIG_IsOK(res1)) {
3231  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_a_geom_base" "', argument " "1"" of type '" "a_geom_base *""'");
3232  }
3233  arg1 = reinterpret_cast< a_geom_base * >(argp1);
3234  delete arg1;
3235 
3236  return TCL_OK;
3237 fail:
3238  return TCL_ERROR;
3239 }
3240 
3241 
3243 a_geom_base *arg1 = (a_geom_base *) obj;
3244 delete arg1;
3245 }
3247  {"classname", _wrap_a_geom_base_classname},
3248  {0,0}
3249 };
3251  {0,0,0}
3252 };
3254 static const char * swig_a_geom_base_base_names[] = {"a_base *",0};
3256 SWIGINTERN int
3257 _wrap_cross(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3258  a_point *arg1 = 0 ;
3259  a_point *arg2 = 0 ;
3260  void *argp1 ;
3261  int res1 = 0 ;
3262  void *argp2 ;
3263  int res2 = 0 ;
3264  a_point result;
3265 
3266  if (SWIG_GetArgs(interp, objc, objv,"oo:cross a b ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
3267  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point, 0 );
3268  if (!SWIG_IsOK(res1)) {
3269  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cross" "', argument " "1"" of type '" "a_point const &""'");
3270  }
3271  if (!argp1) {
3272  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "cross" "', argument " "1"" of type '" "a_point const &""'");
3273  }
3274  arg1 = reinterpret_cast< a_point * >(argp1);
3275  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
3276  if (!SWIG_IsOK(res2)) {
3277  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "cross" "', argument " "2"" of type '" "a_point const &""'");
3278  }
3279  if (!argp2) {
3280  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "cross" "', argument " "2"" of type '" "a_point const &""'");
3281  }
3282  arg2 = reinterpret_cast< a_point * >(argp2);
3283  result = cross((a_point const &)*arg1,(a_point const &)*arg2);
3284  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
3285  return TCL_OK;
3286 fail:
3287  return TCL_ERROR;
3288 }
3289 
3290 
3291 SWIGINTERN int
3292 _wrap_circle_centre(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3293  a_point *arg1 = 0 ;
3294  a_point *arg2 = 0 ;
3295  a_point *arg3 = 0 ;
3296  void *argp1 ;
3297  int res1 = 0 ;
3298  void *argp2 ;
3299  int res2 = 0 ;
3300  void *argp3 ;
3301  int res3 = 0 ;
3302  a_point result;
3303 
3304  if (SWIG_GetArgs(interp, objc, objv,"ooo:circle_centre a_point const & a_point const & a_point const & ",(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
3305  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point, 0 );
3306  if (!SWIG_IsOK(res1)) {
3307  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "circle_centre" "', argument " "1"" of type '" "a_point const &""'");
3308  }
3309  if (!argp1) {
3310  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "circle_centre" "', argument " "1"" of type '" "a_point const &""'");
3311  }
3312  arg1 = reinterpret_cast< a_point * >(argp1);
3313  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
3314  if (!SWIG_IsOK(res2)) {
3315  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "circle_centre" "', argument " "2"" of type '" "a_point const &""'");
3316  }
3317  if (!argp2) {
3318  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "circle_centre" "', argument " "2"" of type '" "a_point const &""'");
3319  }
3320  arg2 = reinterpret_cast< a_point * >(argp2);
3321  res3 = SWIG_ConvertPtr(objv[3], &argp3, SWIGTYPE_p_a_point, 0 );
3322  if (!SWIG_IsOK(res3)) {
3323  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "circle_centre" "', argument " "3"" of type '" "a_point const &""'");
3324  }
3325  if (!argp3) {
3326  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "circle_centre" "', argument " "3"" of type '" "a_point const &""'");
3327  }
3328  arg3 = reinterpret_cast< a_point * >(argp3);
3329  result = circle_centre((a_point const &)*arg1,(a_point const &)*arg2,(a_point const &)*arg3);
3330  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
3331  return TCL_OK;
3332 fail:
3333  return TCL_ERROR;
3334 }
3335 
3336 
3337 SWIGINTERN int
3338 _wrap_new_a_point__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3339  a_point *result = 0 ;
3340 
3341  if (SWIG_GetArgs(interp, objc, objv,":new_a_point ") == TCL_ERROR) SWIG_fail;
3342  result = (a_point *)new a_point();
3343  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point,0));
3344  return TCL_OK;
3345 fail:
3346  return TCL_ERROR;
3347 }
3348 
3349 
3350 SWIGINTERN int
3351 _wrap_new_a_point__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3352  double arg1 ;
3353  double arg2 ;
3354  double arg3 ;
3355  double val1 ;
3356  int ecode1 = 0 ;
3357  double val2 ;
3358  int ecode2 = 0 ;
3359  double val3 ;
3360  int ecode3 = 0 ;
3361  a_point *result = 0 ;
3362 
3363  if (SWIG_GetArgs(interp, objc, objv,"ooo:new_a_point x y z ",(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
3364  ecode1 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[1], &val1);
3365  if (!SWIG_IsOK(ecode1)) {
3366  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_a_point" "', argument " "1"" of type '" "double""'");
3367  }
3368  arg1 = static_cast< double >(val1);
3369  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
3370  if (!SWIG_IsOK(ecode2)) {
3371  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_a_point" "', argument " "2"" of type '" "double""'");
3372  }
3373  arg2 = static_cast< double >(val2);
3374  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
3375  if (!SWIG_IsOK(ecode3)) {
3376  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_a_point" "', argument " "3"" of type '" "double""'");
3377  }
3378  arg3 = static_cast< double >(val3);
3379  result = (a_point *)new a_point(arg1,arg2,arg3);
3380  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point,0));
3381  return TCL_OK;
3382 fail:
3383  return TCL_ERROR;
3384 }
3385 
3386 
3387 SWIGINTERN int
3388 _wrap_new_a_point__SWIG_2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3389  double *arg1 ;
3390  void *argp1 = 0 ;
3391  int res1 = 0 ;
3392  a_point *result = 0 ;
3393 
3394  if (SWIG_GetArgs(interp, objc, objv,"o:new_a_point x ",(void *)0) == TCL_ERROR) SWIG_fail;
3395  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_double, 0 | 0 );
3396  if (!SWIG_IsOK(res1)) {
3397  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_a_point" "', argument " "1"" of type '" "double const [3]""'");
3398  }
3399  arg1 = reinterpret_cast< double * >(argp1);
3400  result = (a_point *)new a_point((double const (*))arg1);
3401  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point,0));
3402  return TCL_OK;
3403 fail:
3404  return TCL_ERROR;
3405 }
3406 
3407 
3408 SWIGINTERN int
3409 _wrap_new_a_point__SWIG_3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3410  a_point *arg1 = 0 ;
3411  void *argp1 ;
3412  int res1 = 0 ;
3413  a_point *result = 0 ;
3414 
3415  if (SWIG_GetArgs(interp, objc, objv,"o:new_a_point p ",(void *)0) == TCL_ERROR) SWIG_fail;
3416  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point, 0 );
3417  if (!SWIG_IsOK(res1)) {
3418  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_a_point" "', argument " "1"" of type '" "a_point const &""'");
3419  }
3420  if (!argp1) {
3421  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_point" "', argument " "1"" of type '" "a_point const &""'");
3422  }
3423  arg1 = reinterpret_cast< a_point * >(argp1);
3424  result = (a_point *)new a_point((a_point const &)*arg1);
3425  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point,0));
3426  return TCL_OK;
3427 fail:
3428  return TCL_ERROR;
3429 }
3430 
3431 
3432 SWIGINTERN int
3433 _wrap_a_point_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3434  std::string result;
3435 
3436  if (SWIG_GetArgs(interp, objc, objv,":a_point_help ") == TCL_ERROR) SWIG_fail;
3437  result = a_point::help();
3438  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
3439  return TCL_OK;
3440 fail:
3441  return TCL_ERROR;
3442 }
3443 
3444 
3445 SWIGINTERN int
3446 _wrap_a_point_x__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3447  a_point *arg1 = (a_point *) 0 ;
3448  void *argp1 = 0 ;
3449  int res1 = 0 ;
3450  double result;
3451 
3452  if (SWIG_GetArgs(interp, objc, objv,"o:a_point_x self ",(void *)0) == TCL_ERROR) SWIG_fail;
3453  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
3454  if (!SWIG_IsOK(res1)) {
3455  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_x" "', argument " "1"" of type '" "a_point const *""'");
3456  }
3457  arg1 = reinterpret_cast< a_point * >(argp1);
3458  result = (double)((a_point const *)arg1)->x();
3459  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
3460  return TCL_OK;
3461 fail:
3462  return TCL_ERROR;
3463 }
3464 
3465 
3466 SWIGINTERN int
3467 _wrap_a_point_y__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3468  a_point *arg1 = (a_point *) 0 ;
3469  void *argp1 = 0 ;
3470  int res1 = 0 ;
3471  double result;
3472 
3473  if (SWIG_GetArgs(interp, objc, objv,"o:a_point_y self ",(void *)0) == TCL_ERROR) SWIG_fail;
3474  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
3475  if (!SWIG_IsOK(res1)) {
3476  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_y" "', argument " "1"" of type '" "a_point const *""'");
3477  }
3478  arg1 = reinterpret_cast< a_point * >(argp1);
3479  result = (double)((a_point const *)arg1)->y();
3480  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
3481  return TCL_OK;
3482 fail:
3483  return TCL_ERROR;
3484 }
3485 
3486 
3487 SWIGINTERN int
3488 _wrap_a_point_z__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3489  a_point *arg1 = (a_point *) 0 ;
3490  void *argp1 = 0 ;
3491  int res1 = 0 ;
3492  double result;
3493 
3494  if (SWIG_GetArgs(interp, objc, objv,"o:a_point_z self ",(void *)0) == TCL_ERROR) SWIG_fail;
3495  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
3496  if (!SWIG_IsOK(res1)) {
3497  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_z" "', argument " "1"" of type '" "a_point const *""'");
3498  }
3499  arg1 = reinterpret_cast< a_point * >(argp1);
3500  result = (double)((a_point const *)arg1)->z();
3501  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
3502  return TCL_OK;
3503 fail:
3504  return TCL_ERROR;
3505 }
3506 
3507 
3508 SWIGINTERN int
3509 _wrap_a_point_x__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3510  a_point *arg1 = (a_point *) 0 ;
3511  double arg2 ;
3512  void *argp1 = 0 ;
3513  int res1 = 0 ;
3514  double val2 ;
3515  int ecode2 = 0 ;
3516 
3517  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point_x self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
3518  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
3519  if (!SWIG_IsOK(res1)) {
3520  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_x" "', argument " "1"" of type '" "a_point *""'");
3521  }
3522  arg1 = reinterpret_cast< a_point * >(argp1);
3523  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
3524  if (!SWIG_IsOK(ecode2)) {
3525  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point_x" "', argument " "2"" of type '" "double""'");
3526  }
3527  arg2 = static_cast< double >(val2);
3528  (arg1)->x(arg2);
3529 
3530  return TCL_OK;
3531 fail:
3532  return TCL_ERROR;
3533 }
3534 
3535 
3536 SWIGINTERN int
3537 _wrap_a_point_x(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3538  Tcl_Obj *CONST *argv = objv+1;
3539  int argc = objc-1;
3540  if (argc == 1) {
3541  int _v;
3542  void *vptr = 0;
3543  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, 0);
3544  _v = SWIG_CheckState(res);
3545  if (_v) {
3546  return _wrap_a_point_x__SWIG_0(clientData, interp, objc, argv - 1);
3547  }
3548  }
3549  if (argc == 2) {
3550  int _v;
3551  void *vptr = 0;
3552  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, 0);
3553  _v = SWIG_CheckState(res);
3554  if (_v) {
3555  {
3556  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
3557  _v = SWIG_CheckState(res);
3558  }
3559  if (_v) {
3560  return _wrap_a_point_x__SWIG_1(clientData, interp, objc, argv - 1);
3561  }
3562  }
3563  }
3564 
3565  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_point_x'.\n"
3566  " Possible C/C++ prototypes are:\n"
3567  " a_point::x() const\n"
3568  " a_point::x(double)\n", TCL_STATIC);
3569  return TCL_ERROR;
3570 }
3571 
3572 
3573 SWIGINTERN int
3574 _wrap_a_point_y__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3575  a_point *arg1 = (a_point *) 0 ;
3576  double arg2 ;
3577  void *argp1 = 0 ;
3578  int res1 = 0 ;
3579  double val2 ;
3580  int ecode2 = 0 ;
3581 
3582  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point_y self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
3583  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
3584  if (!SWIG_IsOK(res1)) {
3585  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_y" "', argument " "1"" of type '" "a_point *""'");
3586  }
3587  arg1 = reinterpret_cast< a_point * >(argp1);
3588  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
3589  if (!SWIG_IsOK(ecode2)) {
3590  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point_y" "', argument " "2"" of type '" "double""'");
3591  }
3592  arg2 = static_cast< double >(val2);
3593  (arg1)->y(arg2);
3594 
3595  return TCL_OK;
3596 fail:
3597  return TCL_ERROR;
3598 }
3599 
3600 
3601 SWIGINTERN int
3602 _wrap_a_point_y(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3603  Tcl_Obj *CONST *argv = objv+1;
3604  int argc = objc-1;
3605  if (argc == 1) {
3606  int _v;
3607  void *vptr = 0;
3608  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, 0);
3609  _v = SWIG_CheckState(res);
3610  if (_v) {
3611  return _wrap_a_point_y__SWIG_0(clientData, interp, objc, argv - 1);
3612  }
3613  }
3614  if (argc == 2) {
3615  int _v;
3616  void *vptr = 0;
3617  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, 0);
3618  _v = SWIG_CheckState(res);
3619  if (_v) {
3620  {
3621  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
3622  _v = SWIG_CheckState(res);
3623  }
3624  if (_v) {
3625  return _wrap_a_point_y__SWIG_1(clientData, interp, objc, argv - 1);
3626  }
3627  }
3628  }
3629 
3630  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_point_y'.\n"
3631  " Possible C/C++ prototypes are:\n"
3632  " a_point::y() const\n"
3633  " a_point::y(double)\n", TCL_STATIC);
3634  return TCL_ERROR;
3635 }
3636 
3637 
3638 SWIGINTERN int
3639 _wrap_a_point_z__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3640  a_point *arg1 = (a_point *) 0 ;
3641  double arg2 ;
3642  void *argp1 = 0 ;
3643  int res1 = 0 ;
3644  double val2 ;
3645  int ecode2 = 0 ;
3646 
3647  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point_z self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
3648  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
3649  if (!SWIG_IsOK(res1)) {
3650  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_z" "', argument " "1"" of type '" "a_point *""'");
3651  }
3652  arg1 = reinterpret_cast< a_point * >(argp1);
3653  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
3654  if (!SWIG_IsOK(ecode2)) {
3655  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point_z" "', argument " "2"" of type '" "double""'");
3656  }
3657  arg2 = static_cast< double >(val2);
3658  (arg1)->z(arg2);
3659 
3660  return TCL_OK;
3661 fail:
3662  return TCL_ERROR;
3663 }
3664 
3665 
3666 SWIGINTERN int
3667 _wrap_a_point_z(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3668  Tcl_Obj *CONST *argv = objv+1;
3669  int argc = objc-1;
3670  if (argc == 1) {
3671  int _v;
3672  void *vptr = 0;
3673  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, 0);
3674  _v = SWIG_CheckState(res);
3675  if (_v) {
3676  return _wrap_a_point_z__SWIG_0(clientData, interp, objc, argv - 1);
3677  }
3678  }
3679  if (argc == 2) {
3680  int _v;
3681  void *vptr = 0;
3682  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, 0);
3683  _v = SWIG_CheckState(res);
3684  if (_v) {
3685  {
3686  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
3687  _v = SWIG_CheckState(res);
3688  }
3689  if (_v) {
3690  return _wrap_a_point_z__SWIG_1(clientData, interp, objc, argv - 1);
3691  }
3692  }
3693  }
3694 
3695  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_point_z'.\n"
3696  " Possible C/C++ prototypes are:\n"
3697  " a_point::z() const\n"
3698  " a_point::z(double)\n", TCL_STATIC);
3699  return TCL_ERROR;
3700 }
3701 
3702 
3703 SWIGINTERN int
3704 _wrap_a_point_set(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3705  a_point *arg1 = (a_point *) 0 ;
3706  double arg2 ;
3707  double arg3 ;
3708  double arg4 ;
3709  void *argp1 = 0 ;
3710  int res1 = 0 ;
3711  double val2 ;
3712  int ecode2 = 0 ;
3713  double val3 ;
3714  int ecode3 = 0 ;
3715  double val4 ;
3716  int ecode4 = 0 ;
3717 
3718  if (SWIG_GetArgs(interp, objc, objv,"oooo:a_point_set self x y z ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
3719  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
3720  if (!SWIG_IsOK(res1)) {
3721  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_set" "', argument " "1"" of type '" "a_point *""'");
3722  }
3723  arg1 = reinterpret_cast< a_point * >(argp1);
3724  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
3725  if (!SWIG_IsOK(ecode2)) {
3726  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point_set" "', argument " "2"" of type '" "double""'");
3727  }
3728  arg2 = static_cast< double >(val2);
3729  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
3730  if (!SWIG_IsOK(ecode3)) {
3731  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "a_point_set" "', argument " "3"" of type '" "double""'");
3732  }
3733  arg3 = static_cast< double >(val3);
3734  ecode4 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[4], &val4);
3735  if (!SWIG_IsOK(ecode4)) {
3736  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "a_point_set" "', argument " "4"" of type '" "double""'");
3737  }
3738  arg4 = static_cast< double >(val4);
3739  (arg1)->set(arg2,arg3,arg4);
3740 
3741  return TCL_OK;
3742 fail:
3743  return TCL_ERROR;
3744 }
3745 
3746 
3747 SWIGINTERN int
3748 _wrap_a_point_set_cylindrical(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3749  a_point *arg1 = (a_point *) 0 ;
3750  double arg2 ;
3751  double arg3 ;
3752  double arg4 ;
3753  void *argp1 = 0 ;
3754  int res1 = 0 ;
3755  double val2 ;
3756  int ecode2 = 0 ;
3757  double val3 ;
3758  int ecode3 = 0 ;
3759  double val4 ;
3760  int ecode4 = 0 ;
3761 
3762  if (SWIG_GetArgs(interp, objc, objv,"oooo:a_point_set_cylindrical self r a h ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
3763  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
3764  if (!SWIG_IsOK(res1)) {
3765  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_set_cylindrical" "', argument " "1"" of type '" "a_point *""'");
3766  }
3767  arg1 = reinterpret_cast< a_point * >(argp1);
3768  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
3769  if (!SWIG_IsOK(ecode2)) {
3770  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point_set_cylindrical" "', argument " "2"" of type '" "double""'");
3771  }
3772  arg2 = static_cast< double >(val2);
3773  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
3774  if (!SWIG_IsOK(ecode3)) {
3775  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "a_point_set_cylindrical" "', argument " "3"" of type '" "double""'");
3776  }
3777  arg3 = static_cast< double >(val3);
3778  ecode4 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[4], &val4);
3779  if (!SWIG_IsOK(ecode4)) {
3780  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "a_point_set_cylindrical" "', argument " "4"" of type '" "double""'");
3781  }
3782  arg4 = static_cast< double >(val4);
3783  (arg1)->set_cylindrical(arg2,arg3,arg4);
3784 
3785  return TCL_OK;
3786 fail:
3787  return TCL_ERROR;
3788 }
3789 
3790 
3791 SWIGINTERN int
3792 _wrap_a_point_set_spherical(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3793  a_point *arg1 = (a_point *) 0 ;
3794  double arg2 ;
3795  double arg3 ;
3796  double arg4 ;
3797  void *argp1 = 0 ;
3798  int res1 = 0 ;
3799  double val2 ;
3800  int ecode2 = 0 ;
3801  double val3 ;
3802  int ecode3 = 0 ;
3803  double val4 ;
3804  int ecode4 = 0 ;
3805 
3806  if (SWIG_GetArgs(interp, objc, objv,"oooo:a_point_set_spherical self r th ph ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
3807  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
3808  if (!SWIG_IsOK(res1)) {
3809  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_set_spherical" "', argument " "1"" of type '" "a_point *""'");
3810  }
3811  arg1 = reinterpret_cast< a_point * >(argp1);
3812  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
3813  if (!SWIG_IsOK(ecode2)) {
3814  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point_set_spherical" "', argument " "2"" of type '" "double""'");
3815  }
3816  arg2 = static_cast< double >(val2);
3817  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
3818  if (!SWIG_IsOK(ecode3)) {
3819  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "a_point_set_spherical" "', argument " "3"" of type '" "double""'");
3820  }
3821  arg3 = static_cast< double >(val3);
3822  ecode4 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[4], &val4);
3823  if (!SWIG_IsOK(ecode4)) {
3824  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "a_point_set_spherical" "', argument " "4"" of type '" "double""'");
3825  }
3826  arg4 = static_cast< double >(val4);
3827  (arg1)->set_spherical(arg2,arg3,arg4);
3828 
3829  return TCL_OK;
3830 fail:
3831  return TCL_ERROR;
3832 }
3833 
3834 
3835 SWIGINTERN int
3836 _wrap_a_point_translate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3837  a_point *arg1 = (a_point *) 0 ;
3838  double arg2 ;
3839  double arg3 ;
3840  double arg4 ;
3841  void *argp1 = 0 ;
3842  int res1 = 0 ;
3843  double val2 ;
3844  int ecode2 = 0 ;
3845  double val3 ;
3846  int ecode3 = 0 ;
3847  double val4 ;
3848  int ecode4 = 0 ;
3849  a_point *result = 0 ;
3850 
3851  if (SWIG_GetArgs(interp, objc, objv,"oooo:a_point_translate self x y z ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
3852  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
3853  if (!SWIG_IsOK(res1)) {
3854  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_translate" "', argument " "1"" of type '" "a_point *""'");
3855  }
3856  arg1 = reinterpret_cast< a_point * >(argp1);
3857  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
3858  if (!SWIG_IsOK(ecode2)) {
3859  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point_translate" "', argument " "2"" of type '" "double""'");
3860  }
3861  arg2 = static_cast< double >(val2);
3862  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
3863  if (!SWIG_IsOK(ecode3)) {
3864  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "a_point_translate" "', argument " "3"" of type '" "double""'");
3865  }
3866  arg3 = static_cast< double >(val3);
3867  ecode4 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[4], &val4);
3868  if (!SWIG_IsOK(ecode4)) {
3869  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "a_point_translate" "', argument " "4"" of type '" "double""'");
3870  }
3871  arg4 = static_cast< double >(val4);
3872  result = (a_point *) &(arg1)->translate(arg2,arg3,arg4);
3873  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point,0));
3874  return TCL_OK;
3875 fail:
3876  return TCL_ERROR;
3877 }
3878 
3879 
3880 SWIGINTERN int
3881 _wrap_a_point_rotate__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3882  a_point *arg1 = (a_point *) 0 ;
3883  a_point *arg2 = 0 ;
3884  a_point *arg3 = 0 ;
3885  a_point *arg4 = 0 ;
3886  void *argp1 = 0 ;
3887  int res1 = 0 ;
3888  void *argp2 ;
3889  int res2 = 0 ;
3890  void *argp3 ;
3891  int res3 = 0 ;
3892  void *argp4 ;
3893  int res4 = 0 ;
3894  a_point *result = 0 ;
3895 
3896  if (SWIG_GetArgs(interp, objc, objv,"oooo:a_point_rotate self x_axis y_axis z_axis ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
3897  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
3898  if (!SWIG_IsOK(res1)) {
3899  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_rotate" "', argument " "1"" of type '" "a_point *""'");
3900  }
3901  arg1 = reinterpret_cast< a_point * >(argp1);
3902  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
3903  if (!SWIG_IsOK(res2)) {
3904  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point_rotate" "', argument " "2"" of type '" "a_point const &""'");
3905  }
3906  if (!argp2) {
3907  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point_rotate" "', argument " "2"" of type '" "a_point const &""'");
3908  }
3909  arg2 = reinterpret_cast< a_point * >(argp2);
3910  res3 = SWIG_ConvertPtr(objv[3], &argp3, SWIGTYPE_p_a_point, 0 );
3911  if (!SWIG_IsOK(res3)) {
3912  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "a_point_rotate" "', argument " "3"" of type '" "a_point const &""'");
3913  }
3914  if (!argp3) {
3915  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point_rotate" "', argument " "3"" of type '" "a_point const &""'");
3916  }
3917  arg3 = reinterpret_cast< a_point * >(argp3);
3918  res4 = SWIG_ConvertPtr(objv[4], &argp4, SWIGTYPE_p_a_point, 0 );
3919  if (!SWIG_IsOK(res4)) {
3920  SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "a_point_rotate" "', argument " "4"" of type '" "a_point const &""'");
3921  }
3922  if (!argp4) {
3923  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point_rotate" "', argument " "4"" of type '" "a_point const &""'");
3924  }
3925  arg4 = reinterpret_cast< a_point * >(argp4);
3926  result = (a_point *) &(arg1)->rotate((a_point const &)*arg2,(a_point const &)*arg3,(a_point const &)*arg4);
3927  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point,0));
3928  return TCL_OK;
3929 fail:
3930  return TCL_ERROR;
3931 }
3932 
3933 
3934 SWIGINTERN int
3935 _wrap_a_point_rotate__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3936  a_point *arg1 = (a_point *) 0 ;
3937  a_point *arg2 = 0 ;
3938  double arg3 ;
3939  void *argp1 = 0 ;
3940  int res1 = 0 ;
3941  void *argp2 ;
3942  int res2 = 0 ;
3943  double val3 ;
3944  int ecode3 = 0 ;
3945  a_point *result = 0 ;
3946 
3947  if (SWIG_GetArgs(interp, objc, objv,"ooo:a_point_rotate self axis angle ",(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
3948  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
3949  if (!SWIG_IsOK(res1)) {
3950  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_rotate" "', argument " "1"" of type '" "a_point *""'");
3951  }
3952  arg1 = reinterpret_cast< a_point * >(argp1);
3953  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
3954  if (!SWIG_IsOK(res2)) {
3955  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point_rotate" "', argument " "2"" of type '" "a_point const &""'");
3956  }
3957  if (!argp2) {
3958  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point_rotate" "', argument " "2"" of type '" "a_point const &""'");
3959  }
3960  arg2 = reinterpret_cast< a_point * >(argp2);
3961  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
3962  if (!SWIG_IsOK(ecode3)) {
3963  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "a_point_rotate" "', argument " "3"" of type '" "double""'");
3964  }
3965  arg3 = static_cast< double >(val3);
3966  result = (a_point *) &(arg1)->rotate((a_point const &)*arg2,arg3);
3967  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point,0));
3968  return TCL_OK;
3969 fail:
3970  return TCL_ERROR;
3971 }
3972 
3973 
3974 SWIGINTERN int
3975 _wrap_a_point_rotate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
3976  Tcl_Obj *CONST *argv = objv+1;
3977  int argc = objc-1;
3978  if (argc == 3) {
3979  int _v;
3980  void *vptr = 0;
3981  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, 0);
3982  _v = SWIG_CheckState(res);
3983  if (_v) {
3984  void *vptr = 0;
3985  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
3986  _v = SWIG_CheckState(res);
3987  if (_v) {
3988  {
3989  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[2], NULL);
3990  _v = SWIG_CheckState(res);
3991  }
3992  if (_v) {
3993  return _wrap_a_point_rotate__SWIG_1(clientData, interp, objc, argv - 1);
3994  }
3995  }
3996  }
3997  }
3998  if (argc == 4) {
3999  int _v;
4000  void *vptr = 0;
4001  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, 0);
4002  _v = SWIG_CheckState(res);
4003  if (_v) {
4004  void *vptr = 0;
4005  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
4006  _v = SWIG_CheckState(res);
4007  if (_v) {
4008  void *vptr = 0;
4009  int res = SWIG_ConvertPtr(argv[2], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
4010  _v = SWIG_CheckState(res);
4011  if (_v) {
4012  void *vptr = 0;
4013  int res = SWIG_ConvertPtr(argv[3], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
4014  _v = SWIG_CheckState(res);
4015  if (_v) {
4016  return _wrap_a_point_rotate__SWIG_0(clientData, interp, objc, argv - 1);
4017  }
4018  }
4019  }
4020  }
4021  }
4022 
4023  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_point_rotate'.\n"
4024  " Possible C/C++ prototypes are:\n"
4025  " a_point::rotate(a_point const &,a_point const &,a_point const &)\n"
4026  " a_point::rotate(a_point const &,double const)\n", TCL_STATIC);
4027  return TCL_ERROR;
4028 }
4029 
4030 
4031 SWIGINTERN int
4032 _wrap_a_point_equals(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4033  a_point *arg1 = (a_point *) 0 ;
4034  a_point *arg2 = 0 ;
4035  void *argp1 = 0 ;
4036  int res1 = 0 ;
4037  void *argp2 ;
4038  int res2 = 0 ;
4039  bool result;
4040 
4041  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point_equals self a_point const & ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4042  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4043  if (!SWIG_IsOK(res1)) {
4044  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_equals" "', argument " "1"" of type '" "a_point *""'");
4045  }
4046  arg1 = reinterpret_cast< a_point * >(argp1);
4047  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
4048  if (!SWIG_IsOK(res2)) {
4049  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point_equals" "', argument " "2"" of type '" "a_point const &""'");
4050  }
4051  if (!argp2) {
4052  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point_equals" "', argument " "2"" of type '" "a_point const &""'");
4053  }
4054  arg2 = reinterpret_cast< a_point * >(argp2);
4055  result = (bool)(arg1)->operator ==((a_point const &)*arg2);
4056  Tcl_SetObjResult(interp,SWIG_From_bool(static_cast< bool >(result)));
4057  return TCL_OK;
4058 fail:
4059  return TCL_ERROR;
4060 }
4061 
4062 
4063 SWIGINTERN int
4064 _wrap_a_point_add(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4065  a_point *arg1 = (a_point *) 0 ;
4066  a_point *arg2 = 0 ;
4067  void *argp1 = 0 ;
4068  int res1 = 0 ;
4069  void *argp2 ;
4070  int res2 = 0 ;
4071  a_point *result = 0 ;
4072 
4073  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point_add self a_point const & ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4074  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4075  if (!SWIG_IsOK(res1)) {
4076  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_add" "', argument " "1"" of type '" "a_point *""'");
4077  }
4078  arg1 = reinterpret_cast< a_point * >(argp1);
4079  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
4080  if (!SWIG_IsOK(res2)) {
4081  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point_add" "', argument " "2"" of type '" "a_point const &""'");
4082  }
4083  if (!argp2) {
4084  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point_add" "', argument " "2"" of type '" "a_point const &""'");
4085  }
4086  arg2 = reinterpret_cast< a_point * >(argp2);
4087  result = (a_point *) &(arg1)->operator +=((a_point const &)*arg2);
4088  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point,0));
4089  return TCL_OK;
4090 fail:
4091  return TCL_ERROR;
4092 }
4093 
4094 
4095 SWIGINTERN int
4096 _wrap_a_point_subtract(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4097  a_point *arg1 = (a_point *) 0 ;
4098  a_point *arg2 = 0 ;
4099  void *argp1 = 0 ;
4100  int res1 = 0 ;
4101  void *argp2 ;
4102  int res2 = 0 ;
4103  a_point *result = 0 ;
4104 
4105  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point_subtract self a_point const & ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4106  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4107  if (!SWIG_IsOK(res1)) {
4108  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_subtract" "', argument " "1"" of type '" "a_point *""'");
4109  }
4110  arg1 = reinterpret_cast< a_point * >(argp1);
4111  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
4112  if (!SWIG_IsOK(res2)) {
4113  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point_subtract" "', argument " "2"" of type '" "a_point const &""'");
4114  }
4115  if (!argp2) {
4116  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point_subtract" "', argument " "2"" of type '" "a_point const &""'");
4117  }
4118  arg2 = reinterpret_cast< a_point * >(argp2);
4119  result = (a_point *) &(arg1)->operator -=((a_point const &)*arg2);
4120  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point,0));
4121  return TCL_OK;
4122 fail:
4123  return TCL_ERROR;
4124 }
4125 
4126 
4127 SWIGINTERN int
4128 _wrap_a_point_a___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4129  a_point *arg1 = (a_point *) 0 ;
4130  a_point *arg2 = 0 ;
4131  void *argp1 = 0 ;
4132  int res1 = 0 ;
4133  void *argp2 ;
4134  int res2 = 0 ;
4135  a_point result;
4136 
4137  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point_+ self a_point const & ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4138  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4139  if (!SWIG_IsOK(res1)) {
4140  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_+" "', argument " "1"" of type '" "a_point *""'");
4141  }
4142  arg1 = reinterpret_cast< a_point * >(argp1);
4143  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
4144  if (!SWIG_IsOK(res2)) {
4145  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point_+" "', argument " "2"" of type '" "a_point const &""'");
4146  }
4147  if (!argp2) {
4148  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point_+" "', argument " "2"" of type '" "a_point const &""'");
4149  }
4150  arg2 = reinterpret_cast< a_point * >(argp2);
4151  result = (arg1)->operator +((a_point const &)*arg2);
4152  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
4153  return TCL_OK;
4154 fail:
4155  return TCL_ERROR;
4156 }
4157 
4158 
4159 SWIGINTERN int
4160 _wrap_a_point_s___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4161  a_point *arg1 = (a_point *) 0 ;
4162  a_point *arg2 = 0 ;
4163  void *argp1 = 0 ;
4164  int res1 = 0 ;
4165  void *argp2 ;
4166  int res2 = 0 ;
4167  a_point result;
4168 
4169  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point_- self a_point const & ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4170  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4171  if (!SWIG_IsOK(res1)) {
4172  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_-" "', argument " "1"" of type '" "a_point *""'");
4173  }
4174  arg1 = reinterpret_cast< a_point * >(argp1);
4175  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
4176  if (!SWIG_IsOK(res2)) {
4177  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point_-" "', argument " "2"" of type '" "a_point const &""'");
4178  }
4179  if (!argp2) {
4180  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point_-" "', argument " "2"" of type '" "a_point const &""'");
4181  }
4182  arg2 = reinterpret_cast< a_point * >(argp2);
4183  result = (arg1)->operator -((a_point const &)*arg2);
4184  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
4185  return TCL_OK;
4186 fail:
4187  return TCL_ERROR;
4188 }
4189 
4190 
4191 SWIGINTERN int
4192 _wrap_a_point_m___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4193  a_point *arg1 = (a_point *) 0 ;
4194  a_point *arg2 = 0 ;
4195  void *argp1 = 0 ;
4196  int res1 = 0 ;
4197  void *argp2 ;
4198  int res2 = 0 ;
4199  double result;
4200 
4201  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point_* self a_point const & ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4202  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4203  if (!SWIG_IsOK(res1)) {
4204  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_*" "', argument " "1"" of type '" "a_point *""'");
4205  }
4206  arg1 = reinterpret_cast< a_point * >(argp1);
4207  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
4208  if (!SWIG_IsOK(res2)) {
4209  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point_*" "', argument " "2"" of type '" "a_point const &""'");
4210  }
4211  if (!argp2) {
4212  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point_*" "', argument " "2"" of type '" "a_point const &""'");
4213  }
4214  arg2 = reinterpret_cast< a_point * >(argp2);
4215  result = (double)(arg1)->operator *((a_point const &)*arg2);
4216  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
4217  return TCL_OK;
4218 fail:
4219  return TCL_ERROR;
4220 }
4221 
4222 
4223 SWIGINTERN int
4224 _wrap_a_point_cross(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4225  a_point *arg1 = (a_point *) 0 ;
4226  a_point *arg2 = 0 ;
4227  void *argp1 = 0 ;
4228  int res1 = 0 ;
4229  void *argp2 ;
4230  int res2 = 0 ;
4231  a_point result;
4232 
4233  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point_cross self a_point const & ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4234  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4235  if (!SWIG_IsOK(res1)) {
4236  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_cross" "', argument " "1"" of type '" "a_point const *""'");
4237  }
4238  arg1 = reinterpret_cast< a_point * >(argp1);
4239  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
4240  if (!SWIG_IsOK(res2)) {
4241  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point_cross" "', argument " "2"" of type '" "a_point const &""'");
4242  }
4243  if (!argp2) {
4244  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point_cross" "', argument " "2"" of type '" "a_point const &""'");
4245  }
4246  arg2 = reinterpret_cast< a_point * >(argp2);
4247  result = ((a_point const *)arg1)->cross((a_point const &)*arg2);
4248  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
4249  return TCL_OK;
4250 fail:
4251  return TCL_ERROR;
4252 }
4253 
4254 
4255 SWIGINTERN int
4256 _wrap_a_point_sumsq(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4257  a_point *arg1 = (a_point *) 0 ;
4258  void *argp1 = 0 ;
4259  int res1 = 0 ;
4260  double result;
4261 
4262  if (SWIG_GetArgs(interp, objc, objv,"o:a_point_sumsq self ",(void *)0) == TCL_ERROR) SWIG_fail;
4263  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4264  if (!SWIG_IsOK(res1)) {
4265  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_sumsq" "', argument " "1"" of type '" "a_point const *""'");
4266  }
4267  arg1 = reinterpret_cast< a_point * >(argp1);
4268  result = (double)((a_point const *)arg1)->sumsq();
4269  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
4270  return TCL_OK;
4271 fail:
4272  return TCL_ERROR;
4273 }
4274 
4275 
4276 SWIGINTERN int
4277 _wrap_a_point_norm(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4278  a_point *arg1 = (a_point *) 0 ;
4279  void *argp1 = 0 ;
4280  int res1 = 0 ;
4281  double result;
4282 
4283  if (SWIG_GetArgs(interp, objc, objv,"o:a_point_norm self ",(void *)0) == TCL_ERROR) SWIG_fail;
4284  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4285  if (!SWIG_IsOK(res1)) {
4286  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_norm" "', argument " "1"" of type '" "a_point const *""'");
4287  }
4288  arg1 = reinterpret_cast< a_point * >(argp1);
4289  result = (double)((a_point const *)arg1)->norm();
4290  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
4291  return TCL_OK;
4292 fail:
4293  return TCL_ERROR;
4294 }
4295 
4296 
4297 SWIGINTERN int
4298 _wrap_a_point_norm1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4299  a_point *arg1 = (a_point *) 0 ;
4300  void *argp1 = 0 ;
4301  int res1 = 0 ;
4302  double result;
4303 
4304  if (SWIG_GetArgs(interp, objc, objv,"o:a_point_norm1 self ",(void *)0) == TCL_ERROR) SWIG_fail;
4305  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4306  if (!SWIG_IsOK(res1)) {
4307  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_norm1" "', argument " "1"" of type '" "a_point const *""'");
4308  }
4309  arg1 = reinterpret_cast< a_point * >(argp1);
4310  result = (double)((a_point const *)arg1)->norm1();
4311  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
4312  return TCL_OK;
4313 fail:
4314  return TCL_ERROR;
4315 }
4316 
4317 
4318 SWIGINTERN int
4319 _wrap_a_point_norm2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4320  a_point *arg1 = (a_point *) 0 ;
4321  void *argp1 = 0 ;
4322  int res1 = 0 ;
4323  double result;
4324 
4325  if (SWIG_GetArgs(interp, objc, objv,"o:a_point_norm2 self ",(void *)0) == TCL_ERROR) SWIG_fail;
4326  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4327  if (!SWIG_IsOK(res1)) {
4328  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_norm2" "', argument " "1"" of type '" "a_point const *""'");
4329  }
4330  arg1 = reinterpret_cast< a_point * >(argp1);
4331  result = (double)((a_point const *)arg1)->norm2();
4332  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
4333  return TCL_OK;
4334 fail:
4335  return TCL_ERROR;
4336 }
4337 
4338 
4339 SWIGINTERN int
4340 _wrap_a_point_normI(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4341  a_point *arg1 = (a_point *) 0 ;
4342  void *argp1 = 0 ;
4343  int res1 = 0 ;
4344  double result;
4345 
4346  if (SWIG_GetArgs(interp, objc, objv,"o:a_point_normI self ",(void *)0) == TCL_ERROR) SWIG_fail;
4347  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4348  if (!SWIG_IsOK(res1)) {
4349  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_normI" "', argument " "1"" of type '" "a_point const *""'");
4350  }
4351  arg1 = reinterpret_cast< a_point * >(argp1);
4352  result = (double)((a_point const *)arg1)->normI();
4353  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
4354  return TCL_OK;
4355 fail:
4356  return TCL_ERROR;
4357 }
4358 
4359 
4360 SWIGINTERN int
4361 _wrap_a_point_dist(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4362  a_point *arg1 = (a_point *) 0 ;
4363  a_point *arg2 = 0 ;
4364  void *argp1 = 0 ;
4365  int res1 = 0 ;
4366  void *argp2 ;
4367  int res2 = 0 ;
4368  double result;
4369 
4370  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point_dist self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4371  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4372  if (!SWIG_IsOK(res1)) {
4373  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_dist" "', argument " "1"" of type '" "a_point const *""'");
4374  }
4375  arg1 = reinterpret_cast< a_point * >(argp1);
4376  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
4377  if (!SWIG_IsOK(res2)) {
4378  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point_dist" "', argument " "2"" of type '" "a_point const &""'");
4379  }
4380  if (!argp2) {
4381  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point_dist" "', argument " "2"" of type '" "a_point const &""'");
4382  }
4383  arg2 = reinterpret_cast< a_point * >(argp2);
4384  result = (double)((a_point const *)arg1)->dist((a_point const &)*arg2);
4385  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
4386  return TCL_OK;
4387 fail:
4388  return TCL_ERROR;
4389 }
4390 
4391 
4392 SWIGINTERN int
4393 _wrap_a_point_normalise(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4394  a_point *arg1 = (a_point *) 0 ;
4395  void *argp1 = 0 ;
4396  int res1 = 0 ;
4397  a_point *result = 0 ;
4398 
4399  if (SWIG_GetArgs(interp, objc, objv,"o:a_point_normalise self ",(void *)0) == TCL_ERROR) SWIG_fail;
4400  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4401  if (!SWIG_IsOK(res1)) {
4402  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_normalise" "', argument " "1"" of type '" "a_point *""'");
4403  }
4404  arg1 = reinterpret_cast< a_point * >(argp1);
4405  result = (a_point *) &(arg1)->normalise();
4406  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point,0));
4407  return TCL_OK;
4408 fail:
4409  return TCL_ERROR;
4410 }
4411 
4412 
4413 SWIGINTERN int
4414 _wrap_a_point_max(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4415  a_point *arg1 = (a_point *) 0 ;
4416  void *argp1 = 0 ;
4417  int res1 = 0 ;
4418  a_point *result = 0 ;
4419 
4420  if (SWIG_GetArgs(interp, objc, objv,"o:a_point_max self ",(void *)0) == TCL_ERROR) SWIG_fail;
4421  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4422  if (!SWIG_IsOK(res1)) {
4423  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_max" "', argument " "1"" of type '" "a_point *""'");
4424  }
4425  arg1 = reinterpret_cast< a_point * >(argp1);
4426  result = (a_point *) &(arg1)->max();
4427  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point,0));
4428  return TCL_OK;
4429 fail:
4430  return TCL_ERROR;
4431 }
4432 
4433 
4434 SWIGINTERN int
4435 _wrap_new_a_point__SWIG_4(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4436  std::string arg1 ;
4437  a_point *result = 0 ;
4438 
4439  if (SWIG_GetArgs(interp, objc, objv,"o:new_a_point s ",(void *)0) == TCL_ERROR) SWIG_fail;
4440  {
4441  std::string *ptr = (std::string *)0;
4442  int res = SWIG_AsPtr_std_string SWIG_TCL_CALL_ARGS_2(objv[1], &ptr);
4443  if (!SWIG_IsOK(res) || !ptr) {
4444  SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "new_a_point" "', argument " "1"" of type '" "std::string const""'");
4445  }
4446  arg1 = *ptr;
4447  if (SWIG_IsNewObj(res)) delete ptr;
4448  }
4449  result = (a_point *)new_a_point__SWIG_4(arg1);
4450  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point,0));
4451  return TCL_OK;
4452 fail:
4453  return TCL_ERROR;
4454 }
4455 
4456 
4457 SWIGINTERN int
4458 _wrap_new_a_point(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4459  Tcl_Obj *CONST *argv = objv+1;
4460  int argc = objc-1;
4461  if (argc == 0) {
4462  return _wrap_new_a_point__SWIG_0(clientData, interp, objc, argv - 1);
4463  }
4464  if (argc == 1) {
4465  int _v;
4466  void *vptr = 0;
4467  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_double, 0);
4468  _v = SWIG_CheckState(res);
4469  if (_v) {
4470  return _wrap_new_a_point__SWIG_2(clientData, interp, objc, argv - 1);
4471  }
4472  }
4473  if (argc == 1) {
4474  int _v;
4475  void *vptr = 0;
4476  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
4477  _v = SWIG_CheckState(res);
4478  if (_v) {
4479  return _wrap_new_a_point__SWIG_3(clientData, interp, objc, argv - 1);
4480  }
4481  }
4482  if (argc == 1) {
4483  int _v;
4484  int res = SWIG_AsPtr_std_string SWIG_TCL_CALL_ARGS_2(argv[0], (std::string**)(0));
4485  _v = SWIG_CheckState(res);
4486  if (_v) {
4487  return _wrap_new_a_point__SWIG_4(clientData, interp, objc, argv - 1);
4488  }
4489  }
4490  if (argc == 3) {
4491  int _v;
4492  {
4493  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[0], NULL);
4494  _v = SWIG_CheckState(res);
4495  }
4496  if (_v) {
4497  {
4498  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
4499  _v = SWIG_CheckState(res);
4500  }
4501  if (_v) {
4502  {
4503  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[2], NULL);
4504  _v = SWIG_CheckState(res);
4505  }
4506  if (_v) {
4507  return _wrap_new_a_point__SWIG_1(clientData, interp, objc, argv - 1);
4508  }
4509  }
4510  }
4511  }
4512 
4513  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'new_a_point'.\n"
4514  " Possible C/C++ prototypes are:\n"
4515  " a_point::a_point()\n"
4516  " a_point::a_point(double,double,double)\n"
4517  " a_point::a_point(double const [3])\n"
4518  " a_point::a_point(a_point const &)\n"
4519  " a_point::a_point(std::string const)\n", TCL_STATIC);
4520  return TCL_ERROR;
4521 }
4522 
4523 
4524 SWIGINTERN int
4525 _wrap_a_point_negate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4526  a_point *arg1 = (a_point *) 0 ;
4527  void *argp1 = 0 ;
4528  int res1 = 0 ;
4529  a_point *result = 0 ;
4530 
4531  if (SWIG_GetArgs(interp, objc, objv,"o:a_point_negate self ",(void *)0) == TCL_ERROR) SWIG_fail;
4532  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4533  if (!SWIG_IsOK(res1)) {
4534  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_negate" "', argument " "1"" of type '" "a_point *""'");
4535  }
4536  arg1 = reinterpret_cast< a_point * >(argp1);
4537  result = (a_point *) &a_point_negate(arg1);
4538  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point,0));
4539  return TCL_OK;
4540 fail:
4541  return TCL_ERROR;
4542 }
4543 
4544 
4545 SWIGINTERN int
4546 _wrap_a_point_multiply(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4547  a_point *arg1 = (a_point *) 0 ;
4548  double arg2 ;
4549  void *argp1 = 0 ;
4550  int res1 = 0 ;
4551  double val2 ;
4552  int ecode2 = 0 ;
4553  a_point *result = 0 ;
4554 
4555  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point_multiply self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4556  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4557  if (!SWIG_IsOK(res1)) {
4558  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_multiply" "', argument " "1"" of type '" "a_point *""'");
4559  }
4560  arg1 = reinterpret_cast< a_point * >(argp1);
4561  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
4562  if (!SWIG_IsOK(ecode2)) {
4563  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point_multiply" "', argument " "2"" of type '" "double""'");
4564  }
4565  arg2 = static_cast< double >(val2);
4566  result = (a_point *) &a_point_multiply(arg1,arg2);
4567  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point,0));
4568  return TCL_OK;
4569 fail:
4570  return TCL_ERROR;
4571 }
4572 
4573 
4574 SWIGINTERN int
4575 _wrap_a_point_divide(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4576  a_point *arg1 = (a_point *) 0 ;
4577  double arg2 ;
4578  void *argp1 = 0 ;
4579  int res1 = 0 ;
4580  double val2 ;
4581  int ecode2 = 0 ;
4582  a_point *result = 0 ;
4583 
4584  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point_divide self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4585  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, 0 | 0 );
4586  if (!SWIG_IsOK(res1)) {
4587  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point_divide" "', argument " "1"" of type '" "a_point *""'");
4588  }
4589  arg1 = reinterpret_cast< a_point * >(argp1);
4590  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
4591  if (!SWIG_IsOK(ecode2)) {
4592  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point_divide" "', argument " "2"" of type '" "double""'");
4593  }
4594  arg2 = static_cast< double >(val2);
4595  result = (a_point *) &a_point_divide(arg1,arg2);
4596  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point,0));
4597  return TCL_OK;
4598 fail:
4599  return TCL_ERROR;
4600 }
4601 
4602 
4603 SWIGINTERN int
4604 _wrap_delete_a_point(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4605  a_point *arg1 = (a_point *) 0 ;
4606  void *argp1 = 0 ;
4607  int res1 = 0 ;
4608 
4609  if (SWIG_GetArgs(interp, objc, objv,"o:delete_a_point self ",(void *)0) == TCL_ERROR) SWIG_fail;
4610  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point, SWIG_POINTER_DISOWN | 0 );
4611  if (!SWIG_IsOK(res1)) {
4612  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_a_point" "', argument " "1"" of type '" "a_point *""'");
4613  }
4614  arg1 = reinterpret_cast< a_point * >(argp1);
4615  delete arg1;
4616 
4617  return TCL_OK;
4618 fail:
4619  return TCL_ERROR;
4620 }
4621 
4622 
4624 a_point *arg1 = (a_point *) obj;
4625 delete arg1;
4626 }
4628  {"x", _wrap_a_point_x},
4629  {"y", _wrap_a_point_y},
4630  {"z", _wrap_a_point_z},
4631  {"set", _wrap_a_point_set},
4632  {"set_cylindrical", _wrap_a_point_set_cylindrical},
4633  {"set_spherical", _wrap_a_point_set_spherical},
4634  {"translate", _wrap_a_point_translate},
4635  {"rotate", _wrap_a_point_rotate},
4636  {"equals", _wrap_a_point_equals},
4637  {"add", _wrap_a_point_add},
4638  {"subtract", _wrap_a_point_subtract},
4639  {"+", _wrap_a_point_a___},
4640  {"-", _wrap_a_point_s___},
4641  {"*", _wrap_a_point_m___},
4642  {"cross", _wrap_a_point_cross},
4643  {"sumsq", _wrap_a_point_sumsq},
4644  {"norm", _wrap_a_point_norm},
4645  {"norm1", _wrap_a_point_norm1},
4646  {"norm2", _wrap_a_point_norm2},
4647  {"normI", _wrap_a_point_normI},
4648  {"dist", _wrap_a_point_dist},
4649  {"normalise", _wrap_a_point_normalise},
4650  {"max", _wrap_a_point_max},
4651  {"negate", _wrap_a_point_negate},
4652  {"multiply", _wrap_a_point_multiply},
4653  {"divide", _wrap_a_point_divide},
4654  {0,0}
4655 };
4657  {0,0,0}
4658 };
4659 static swig_class *swig_a_point_bases[] = {0,0};
4660 static const char * swig_a_point_base_names[] = {"a_geom_base *",0};
4662 SWIGINTERN int
4663 _wrap_dist__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4664  a_point *arg1 = 0 ;
4665  a_point *arg2 = 0 ;
4666  void *argp1 ;
4667  int res1 = 0 ;
4668  void *argp2 ;
4669  int res2 = 0 ;
4670  double result;
4671 
4672  if (SWIG_GetArgs(interp, objc, objv,"oo:dist a b ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4673  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point, 0 );
4674  if (!SWIG_IsOK(res1)) {
4675  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "dist" "', argument " "1"" of type '" "a_point const &""'");
4676  }
4677  if (!argp1) {
4678  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "dist" "', argument " "1"" of type '" "a_point const &""'");
4679  }
4680  arg1 = reinterpret_cast< a_point * >(argp1);
4681  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
4682  if (!SWIG_IsOK(res2)) {
4683  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "dist" "', argument " "2"" of type '" "a_point const &""'");
4684  }
4685  if (!argp2) {
4686  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "dist" "', argument " "2"" of type '" "a_point const &""'");
4687  }
4688  arg2 = reinterpret_cast< a_point * >(argp2);
4689  result = (double)dist((a_point const &)*arg1,(a_point const &)*arg2);
4690  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
4691  return TCL_OK;
4692 fail:
4693  return TCL_ERROR;
4694 }
4695 
4696 
4697 SWIGINTERN int
4698 _wrap_angle__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4699  a_point arg1 ;
4700  a_point arg2 ;
4701  void *argp1 ;
4702  int res1 = 0 ;
4703  void *argp2 ;
4704  int res2 = 0 ;
4705  double result;
4706 
4707  if (SWIG_GetArgs(interp, objc, objv,"oo:angle a b ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4708  {
4709  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point, 0 );
4710  if (!SWIG_IsOK(res1)) {
4711  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "angle" "', argument " "1"" of type '" "a_point""'");
4712  }
4713  if (!argp1) {
4714  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "angle" "', argument " "1"" of type '" "a_point""'");
4715  } else {
4716  arg1 = *(reinterpret_cast< a_point * >(argp1));
4717  }
4718  }
4719  {
4720  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
4721  if (!SWIG_IsOK(res2)) {
4722  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "angle" "', argument " "2"" of type '" "a_point""'");
4723  }
4724  if (!argp2) {
4725  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "angle" "', argument " "2"" of type '" "a_point""'");
4726  } else {
4727  arg2 = *(reinterpret_cast< a_point * >(argp2));
4728  }
4729  }
4730  result = (double)angle(arg1,arg2);
4731  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
4732  return TCL_OK;
4733 fail:
4734  return TCL_ERROR;
4735 }
4736 
4737 
4738 SWIGINTERN int
4739 _wrap_average__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4740  a_point *arg1 = 0 ;
4741  a_point *arg2 = 0 ;
4742  double arg3 ;
4743  void *argp1 ;
4744  int res1 = 0 ;
4745  void *argp2 ;
4746  int res2 = 0 ;
4747  double val3 ;
4748  int ecode3 = 0 ;
4749  a_point result;
4750 
4751  if (SWIG_GetArgs(interp, objc, objv,"ooo:average a b f ",(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4752  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point, 0 );
4753  if (!SWIG_IsOK(res1)) {
4754  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "average" "', argument " "1"" of type '" "a_point const &""'");
4755  }
4756  if (!argp1) {
4757  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "average" "', argument " "1"" of type '" "a_point const &""'");
4758  }
4759  arg1 = reinterpret_cast< a_point * >(argp1);
4760  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
4761  if (!SWIG_IsOK(res2)) {
4762  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "average" "', argument " "2"" of type '" "a_point const &""'");
4763  }
4764  if (!argp2) {
4765  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "average" "', argument " "2"" of type '" "a_point const &""'");
4766  }
4767  arg2 = reinterpret_cast< a_point * >(argp2);
4768  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
4769  if (!SWIG_IsOK(ecode3)) {
4770  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "average" "', argument " "3"" of type '" "double""'");
4771  }
4772  arg3 = static_cast< double >(val3);
4773  result = average((a_point const &)*arg1,(a_point const &)*arg2,arg3);
4774  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
4775  return TCL_OK;
4776 fail:
4777  return TCL_ERROR;
4778 }
4779 
4780 
4781 SWIGINTERN int
4782 _wrap_average__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4783  a_point *arg1 = 0 ;
4784  a_point *arg2 = 0 ;
4785  void *argp1 ;
4786  int res1 = 0 ;
4787  void *argp2 ;
4788  int res2 = 0 ;
4789  a_point result;
4790 
4791  if (SWIG_GetArgs(interp, objc, objv,"oo:average a b ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4792  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point, 0 );
4793  if (!SWIG_IsOK(res1)) {
4794  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "average" "', argument " "1"" of type '" "a_point const &""'");
4795  }
4796  if (!argp1) {
4797  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "average" "', argument " "1"" of type '" "a_point const &""'");
4798  }
4799  arg1 = reinterpret_cast< a_point * >(argp1);
4800  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
4801  if (!SWIG_IsOK(res2)) {
4802  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "average" "', argument " "2"" of type '" "a_point const &""'");
4803  }
4804  if (!argp2) {
4805  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "average" "', argument " "2"" of type '" "a_point const &""'");
4806  }
4807  arg2 = reinterpret_cast< a_point * >(argp2);
4808  result = average((a_point const &)*arg1,(a_point const &)*arg2);
4809  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
4810  return TCL_OK;
4811 fail:
4812  return TCL_ERROR;
4813 }
4814 
4815 
4816 SWIGINTERN int
4817 _wrap_new_a_point2__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4818  a_point2 *result = 0 ;
4819 
4820  if (SWIG_GetArgs(interp, objc, objv,":new_a_point2 ") == TCL_ERROR) SWIG_fail;
4821  result = (a_point2 *)new a_point2();
4822  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point2,0));
4823  return TCL_OK;
4824 fail:
4825  return TCL_ERROR;
4826 }
4827 
4828 
4829 SWIGINTERN int
4830 _wrap_new_a_point2__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4831  double arg1 ;
4832  double arg2 ;
4833  double val1 ;
4834  int ecode1 = 0 ;
4835  double val2 ;
4836  int ecode2 = 0 ;
4837  a_point2 *result = 0 ;
4838 
4839  if (SWIG_GetArgs(interp, objc, objv,"oo:new_a_point2 x y ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4840  ecode1 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[1], &val1);
4841  if (!SWIG_IsOK(ecode1)) {
4842  SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_a_point2" "', argument " "1"" of type '" "double""'");
4843  }
4844  arg1 = static_cast< double >(val1);
4845  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
4846  if (!SWIG_IsOK(ecode2)) {
4847  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_a_point2" "', argument " "2"" of type '" "double""'");
4848  }
4849  arg2 = static_cast< double >(val2);
4850  result = (a_point2 *)new a_point2(arg1,arg2);
4851  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point2,0));
4852  return TCL_OK;
4853 fail:
4854  return TCL_ERROR;
4855 }
4856 
4857 
4858 SWIGINTERN int
4859 _wrap_new_a_point2__SWIG_2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4860  double *arg1 ;
4861  void *argp1 = 0 ;
4862  int res1 = 0 ;
4863  a_point2 *result = 0 ;
4864 
4865  if (SWIG_GetArgs(interp, objc, objv,"o:new_a_point2 x ",(void *)0) == TCL_ERROR) SWIG_fail;
4866  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_double, 0 | 0 );
4867  if (!SWIG_IsOK(res1)) {
4868  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_a_point2" "', argument " "1"" of type '" "double const [2]""'");
4869  }
4870  arg1 = reinterpret_cast< double * >(argp1);
4871  result = (a_point2 *)new a_point2((double const (*))arg1);
4872  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point2,0));
4873  return TCL_OK;
4874 fail:
4875  return TCL_ERROR;
4876 }
4877 
4878 
4879 SWIGINTERN int
4880 _wrap_new_a_point2__SWIG_3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4881  a_point2 *arg1 = 0 ;
4882  void *argp1 ;
4883  int res1 = 0 ;
4884  a_point2 *result = 0 ;
4885 
4886  if (SWIG_GetArgs(interp, objc, objv,"o:new_a_point2 p ",(void *)0) == TCL_ERROR) SWIG_fail;
4887  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point2, 0 );
4888  if (!SWIG_IsOK(res1)) {
4889  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_a_point2" "', argument " "1"" of type '" "a_point2 const &""'");
4890  }
4891  if (!argp1) {
4892  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_point2" "', argument " "1"" of type '" "a_point2 const &""'");
4893  }
4894  arg1 = reinterpret_cast< a_point2 * >(argp1);
4895  result = (a_point2 *)new a_point2((a_point2 const &)*arg1);
4896  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point2,0));
4897  return TCL_OK;
4898 fail:
4899  return TCL_ERROR;
4900 }
4901 
4902 
4903 SWIGINTERN int
4904 _wrap_a_point2_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4905  std::string result;
4906 
4907  if (SWIG_GetArgs(interp, objc, objv,":a_point2_help ") == TCL_ERROR) SWIG_fail;
4908  result = a_point2::help();
4909  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
4910  return TCL_OK;
4911 fail:
4912  return TCL_ERROR;
4913 }
4914 
4915 
4916 SWIGINTERN int
4917 _wrap_a_point2_x__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4918  a_point2 *arg1 = (a_point2 *) 0 ;
4919  void *argp1 = 0 ;
4920  int res1 = 0 ;
4921  double result;
4922 
4923  if (SWIG_GetArgs(interp, objc, objv,"o:a_point2_x self ",(void *)0) == TCL_ERROR) SWIG_fail;
4924  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
4925  if (!SWIG_IsOK(res1)) {
4926  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_x" "', argument " "1"" of type '" "a_point2 const *""'");
4927  }
4928  arg1 = reinterpret_cast< a_point2 * >(argp1);
4929  result = (double)((a_point2 const *)arg1)->x();
4930  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
4931  return TCL_OK;
4932 fail:
4933  return TCL_ERROR;
4934 }
4935 
4936 
4937 SWIGINTERN int
4938 _wrap_a_point2_y__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4939  a_point2 *arg1 = (a_point2 *) 0 ;
4940  void *argp1 = 0 ;
4941  int res1 = 0 ;
4942  double result;
4943 
4944  if (SWIG_GetArgs(interp, objc, objv,"o:a_point2_y self ",(void *)0) == TCL_ERROR) SWIG_fail;
4945  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
4946  if (!SWIG_IsOK(res1)) {
4947  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_y" "', argument " "1"" of type '" "a_point2 const *""'");
4948  }
4949  arg1 = reinterpret_cast< a_point2 * >(argp1);
4950  result = (double)((a_point2 const *)arg1)->y();
4951  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
4952  return TCL_OK;
4953 fail:
4954  return TCL_ERROR;
4955 }
4956 
4957 
4958 SWIGINTERN int
4959 _wrap_a_point2_x__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4960  a_point2 *arg1 = (a_point2 *) 0 ;
4961  double arg2 ;
4962  void *argp1 = 0 ;
4963  int res1 = 0 ;
4964  double val2 ;
4965  int ecode2 = 0 ;
4966 
4967  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point2_x self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
4968  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
4969  if (!SWIG_IsOK(res1)) {
4970  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_x" "', argument " "1"" of type '" "a_point2 *""'");
4971  }
4972  arg1 = reinterpret_cast< a_point2 * >(argp1);
4973  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
4974  if (!SWIG_IsOK(ecode2)) {
4975  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point2_x" "', argument " "2"" of type '" "double""'");
4976  }
4977  arg2 = static_cast< double >(val2);
4978  (arg1)->x(arg2);
4979 
4980  return TCL_OK;
4981 fail:
4982  return TCL_ERROR;
4983 }
4984 
4985 
4986 SWIGINTERN int
4987 _wrap_a_point2_x(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
4988  Tcl_Obj *CONST *argv = objv+1;
4989  int argc = objc-1;
4990  if (argc == 1) {
4991  int _v;
4992  void *vptr = 0;
4993  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point2, 0);
4994  _v = SWIG_CheckState(res);
4995  if (_v) {
4996  return _wrap_a_point2_x__SWIG_0(clientData, interp, objc, argv - 1);
4997  }
4998  }
4999  if (argc == 2) {
5000  int _v;
5001  void *vptr = 0;
5002  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point2, 0);
5003  _v = SWIG_CheckState(res);
5004  if (_v) {
5005  {
5006  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
5007  _v = SWIG_CheckState(res);
5008  }
5009  if (_v) {
5010  return _wrap_a_point2_x__SWIG_1(clientData, interp, objc, argv - 1);
5011  }
5012  }
5013  }
5014 
5015  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_point2_x'.\n"
5016  " Possible C/C++ prototypes are:\n"
5017  " a_point2::x() const\n"
5018  " a_point2::x(double)\n", TCL_STATIC);
5019  return TCL_ERROR;
5020 }
5021 
5022 
5023 SWIGINTERN int
5024 _wrap_a_point2_y__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5025  a_point2 *arg1 = (a_point2 *) 0 ;
5026  double arg2 ;
5027  void *argp1 = 0 ;
5028  int res1 = 0 ;
5029  double val2 ;
5030  int ecode2 = 0 ;
5031 
5032  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point2_y self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5033  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5034  if (!SWIG_IsOK(res1)) {
5035  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_y" "', argument " "1"" of type '" "a_point2 *""'");
5036  }
5037  arg1 = reinterpret_cast< a_point2 * >(argp1);
5038  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
5039  if (!SWIG_IsOK(ecode2)) {
5040  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point2_y" "', argument " "2"" of type '" "double""'");
5041  }
5042  arg2 = static_cast< double >(val2);
5043  (arg1)->y(arg2);
5044 
5045  return TCL_OK;
5046 fail:
5047  return TCL_ERROR;
5048 }
5049 
5050 
5051 SWIGINTERN int
5052 _wrap_a_point2_y(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5053  Tcl_Obj *CONST *argv = objv+1;
5054  int argc = objc-1;
5055  if (argc == 1) {
5056  int _v;
5057  void *vptr = 0;
5058  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point2, 0);
5059  _v = SWIG_CheckState(res);
5060  if (_v) {
5061  return _wrap_a_point2_y__SWIG_0(clientData, interp, objc, argv - 1);
5062  }
5063  }
5064  if (argc == 2) {
5065  int _v;
5066  void *vptr = 0;
5067  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point2, 0);
5068  _v = SWIG_CheckState(res);
5069  if (_v) {
5070  {
5071  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
5072  _v = SWIG_CheckState(res);
5073  }
5074  if (_v) {
5075  return _wrap_a_point2_y__SWIG_1(clientData, interp, objc, argv - 1);
5076  }
5077  }
5078  }
5079 
5080  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_point2_y'.\n"
5081  " Possible C/C++ prototypes are:\n"
5082  " a_point2::y() const\n"
5083  " a_point2::y(double)\n", TCL_STATIC);
5084  return TCL_ERROR;
5085 }
5086 
5087 
5088 SWIGINTERN int
5089 _wrap_a_point2_set__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5090  a_point2 *arg1 = (a_point2 *) 0 ;
5091  double arg2 ;
5092  double arg3 ;
5093  void *argp1 = 0 ;
5094  int res1 = 0 ;
5095  double val2 ;
5096  int ecode2 = 0 ;
5097  double val3 ;
5098  int ecode3 = 0 ;
5099 
5100  if (SWIG_GetArgs(interp, objc, objv,"ooo:a_point2_set self x y ",(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5101  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5102  if (!SWIG_IsOK(res1)) {
5103  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_set" "', argument " "1"" of type '" "a_point2 *""'");
5104  }
5105  arg1 = reinterpret_cast< a_point2 * >(argp1);
5106  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
5107  if (!SWIG_IsOK(ecode2)) {
5108  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point2_set" "', argument " "2"" of type '" "double""'");
5109  }
5110  arg2 = static_cast< double >(val2);
5111  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
5112  if (!SWIG_IsOK(ecode3)) {
5113  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "a_point2_set" "', argument " "3"" of type '" "double""'");
5114  }
5115  arg3 = static_cast< double >(val3);
5116  (arg1)->set(arg2,arg3);
5117 
5118  return TCL_OK;
5119 fail:
5120  return TCL_ERROR;
5121 }
5122 
5123 
5124 SWIGINTERN int
5125 _wrap_a_point2_set__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5126  a_point2 *arg1 = (a_point2 *) 0 ;
5127  double *arg2 ;
5128  void *argp1 = 0 ;
5129  int res1 = 0 ;
5130  void *argp2 = 0 ;
5131  int res2 = 0 ;
5132 
5133  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point2_set self x ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5134  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5135  if (!SWIG_IsOK(res1)) {
5136  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_set" "', argument " "1"" of type '" "a_point2 *""'");
5137  }
5138  arg1 = reinterpret_cast< a_point2 * >(argp1);
5139  res2 = SWIG_ConvertPtr(objv[2], &argp2,SWIGTYPE_p_double, 0 | 0 );
5140  if (!SWIG_IsOK(res2)) {
5141  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point2_set" "', argument " "2"" of type '" "double [2]""'");
5142  }
5143  arg2 = reinterpret_cast< double * >(argp2);
5144  (arg1)->set(arg2);
5145 
5146  return TCL_OK;
5147 fail:
5148  return TCL_ERROR;
5149 }
5150 
5151 
5152 SWIGINTERN int
5153 _wrap_a_point2_set(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5154  Tcl_Obj *CONST *argv = objv+1;
5155  int argc = objc-1;
5156  if (argc == 2) {
5157  int _v;
5158  void *vptr = 0;
5159  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point2, 0);
5160  _v = SWIG_CheckState(res);
5161  if (_v) {
5162  void *vptr = 0;
5163  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_double, 0);
5164  _v = SWIG_CheckState(res);
5165  if (_v) {
5166  return _wrap_a_point2_set__SWIG_1(clientData, interp, objc, argv - 1);
5167  }
5168  }
5169  }
5170  if (argc == 3) {
5171  int _v;
5172  void *vptr = 0;
5173  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point2, 0);
5174  _v = SWIG_CheckState(res);
5175  if (_v) {
5176  {
5177  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
5178  _v = SWIG_CheckState(res);
5179  }
5180  if (_v) {
5181  {
5182  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[2], NULL);
5183  _v = SWIG_CheckState(res);
5184  }
5185  if (_v) {
5186  return _wrap_a_point2_set__SWIG_0(clientData, interp, objc, argv - 1);
5187  }
5188  }
5189  }
5190  }
5191 
5192  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_point2_set'.\n"
5193  " Possible C/C++ prototypes are:\n"
5194  " a_point2::set(double,double)\n"
5195  " a_point2::set(double [2])\n", TCL_STATIC);
5196  return TCL_ERROR;
5197 }
5198 
5199 
5200 SWIGINTERN int
5201 _wrap_a_point2_translate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5202  a_point2 *arg1 = (a_point2 *) 0 ;
5203  double arg2 ;
5204  double arg3 ;
5205  void *argp1 = 0 ;
5206  int res1 = 0 ;
5207  double val2 ;
5208  int ecode2 = 0 ;
5209  double val3 ;
5210  int ecode3 = 0 ;
5211  a_point2 *result = 0 ;
5212 
5213  if (SWIG_GetArgs(interp, objc, objv,"ooo:a_point2_translate self x y ",(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5214  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5215  if (!SWIG_IsOK(res1)) {
5216  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_translate" "', argument " "1"" of type '" "a_point2 *""'");
5217  }
5218  arg1 = reinterpret_cast< a_point2 * >(argp1);
5219  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
5220  if (!SWIG_IsOK(ecode2)) {
5221  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point2_translate" "', argument " "2"" of type '" "double""'");
5222  }
5223  arg2 = static_cast< double >(val2);
5224  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
5225  if (!SWIG_IsOK(ecode3)) {
5226  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "a_point2_translate" "', argument " "3"" of type '" "double""'");
5227  }
5228  arg3 = static_cast< double >(val3);
5229  result = (a_point2 *) &(arg1)->translate(arg2,arg3);
5230  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point2,0));
5231  return TCL_OK;
5232 fail:
5233  return TCL_ERROR;
5234 }
5235 
5236 
5237 SWIGINTERN int
5238 _wrap_a_point2_rotate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5239  a_point2 *arg1 = (a_point2 *) 0 ;
5240  double arg2 ;
5241  void *argp1 = 0 ;
5242  int res1 = 0 ;
5243  double val2 ;
5244  int ecode2 = 0 ;
5245  a_point2 *result = 0 ;
5246 
5247  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point2_rotate self angle ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5248  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5249  if (!SWIG_IsOK(res1)) {
5250  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_rotate" "', argument " "1"" of type '" "a_point2 *""'");
5251  }
5252  arg1 = reinterpret_cast< a_point2 * >(argp1);
5253  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
5254  if (!SWIG_IsOK(ecode2)) {
5255  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point2_rotate" "', argument " "2"" of type '" "double""'");
5256  }
5257  arg2 = static_cast< double >(val2);
5258  result = (a_point2 *) &(arg1)->rotate(arg2);
5259  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point2,0));
5260  return TCL_OK;
5261 fail:
5262  return TCL_ERROR;
5263 }
5264 
5265 
5266 SWIGINTERN int
5267 _wrap_a_point2_equals(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5268  a_point2 *arg1 = (a_point2 *) 0 ;
5269  a_point2 *arg2 = 0 ;
5270  void *argp1 = 0 ;
5271  int res1 = 0 ;
5272  void *argp2 ;
5273  int res2 = 0 ;
5274  bool result;
5275 
5276  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point2_equals self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5277  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5278  if (!SWIG_IsOK(res1)) {
5279  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_equals" "', argument " "1"" of type '" "a_point2 *""'");
5280  }
5281  arg1 = reinterpret_cast< a_point2 * >(argp1);
5282  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point2, 0 );
5283  if (!SWIG_IsOK(res2)) {
5284  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point2_equals" "', argument " "2"" of type '" "a_point2 const &""'");
5285  }
5286  if (!argp2) {
5287  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point2_equals" "', argument " "2"" of type '" "a_point2 const &""'");
5288  }
5289  arg2 = reinterpret_cast< a_point2 * >(argp2);
5290  result = (bool)(arg1)->operator ==((a_point2 const &)*arg2);
5291  Tcl_SetObjResult(interp,SWIG_From_bool(static_cast< bool >(result)));
5292  return TCL_OK;
5293 fail:
5294  return TCL_ERROR;
5295 }
5296 
5297 
5298 SWIGINTERN int
5299 _wrap_a_point2_e___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5300  a_point2 *arg1 = (a_point2 *) 0 ;
5301  a_point2 *arg2 = 0 ;
5302  void *argp1 = 0 ;
5303  int res1 = 0 ;
5304  void *argp2 ;
5305  int res2 = 0 ;
5306  a_point2 *result = 0 ;
5307 
5308  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point2_= self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5309  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5310  if (!SWIG_IsOK(res1)) {
5311  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_=" "', argument " "1"" of type '" "a_point2 *""'");
5312  }
5313  arg1 = reinterpret_cast< a_point2 * >(argp1);
5314  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point2, 0 );
5315  if (!SWIG_IsOK(res2)) {
5316  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point2_=" "', argument " "2"" of type '" "a_point2 const &""'");
5317  }
5318  if (!argp2) {
5319  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point2_=" "', argument " "2"" of type '" "a_point2 const &""'");
5320  }
5321  arg2 = reinterpret_cast< a_point2 * >(argp2);
5322  result = (a_point2 *) &(arg1)->operator =((a_point2 const &)*arg2);
5323  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point2,0));
5324  return TCL_OK;
5325 fail:
5326  return TCL_ERROR;
5327 }
5328 
5329 
5330 SWIGINTERN int
5331 _wrap_a_point2_s___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5332  a_point2 *arg1 = (a_point2 *) 0 ;
5333  void *argp1 = 0 ;
5334  int res1 = 0 ;
5335  a_point2 result;
5336 
5337  if (SWIG_GetArgs(interp, objc, objv,"o:a_point2_- self ",(void *)0) == TCL_ERROR) SWIG_fail;
5338  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5339  if (!SWIG_IsOK(res1)) {
5340  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_-" "', argument " "1"" of type '" "a_point2 *""'");
5341  }
5342  arg1 = reinterpret_cast< a_point2 * >(argp1);
5343  result = (arg1)->operator -();
5344  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point2(static_cast< const a_point2& >(result))), SWIGTYPE_p_a_point2, SWIG_POINTER_OWN | 0 ));
5345  return TCL_OK;
5346 fail:
5347  return TCL_ERROR;
5348 }
5349 
5350 
5351 SWIGINTERN int
5352 _wrap_a_point2_add(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5353  a_point2 *arg1 = (a_point2 *) 0 ;
5354  a_point2 *arg2 = 0 ;
5355  void *argp1 = 0 ;
5356  int res1 = 0 ;
5357  void *argp2 ;
5358  int res2 = 0 ;
5359  a_point2 *result = 0 ;
5360 
5361  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point2_add self a_point2 const & ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5362  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5363  if (!SWIG_IsOK(res1)) {
5364  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_add" "', argument " "1"" of type '" "a_point2 *""'");
5365  }
5366  arg1 = reinterpret_cast< a_point2 * >(argp1);
5367  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point2, 0 );
5368  if (!SWIG_IsOK(res2)) {
5369  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point2_add" "', argument " "2"" of type '" "a_point2 const &""'");
5370  }
5371  if (!argp2) {
5372  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point2_add" "', argument " "2"" of type '" "a_point2 const &""'");
5373  }
5374  arg2 = reinterpret_cast< a_point2 * >(argp2);
5375  result = (a_point2 *) &(arg1)->operator +=((a_point2 const &)*arg2);
5376  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point2,0));
5377  return TCL_OK;
5378 fail:
5379  return TCL_ERROR;
5380 }
5381 
5382 
5383 SWIGINTERN int
5384 _wrap_a_point2_subtract(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5385  a_point2 *arg1 = (a_point2 *) 0 ;
5386  a_point2 *arg2 = 0 ;
5387  void *argp1 = 0 ;
5388  int res1 = 0 ;
5389  void *argp2 ;
5390  int res2 = 0 ;
5391  a_point2 *result = 0 ;
5392 
5393  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point2_subtract self a_point2 const & ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5394  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5395  if (!SWIG_IsOK(res1)) {
5396  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_subtract" "', argument " "1"" of type '" "a_point2 *""'");
5397  }
5398  arg1 = reinterpret_cast< a_point2 * >(argp1);
5399  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point2, 0 );
5400  if (!SWIG_IsOK(res2)) {
5401  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point2_subtract" "', argument " "2"" of type '" "a_point2 const &""'");
5402  }
5403  if (!argp2) {
5404  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point2_subtract" "', argument " "2"" of type '" "a_point2 const &""'");
5405  }
5406  arg2 = reinterpret_cast< a_point2 * >(argp2);
5407  result = (a_point2 *) &(arg1)->operator -=((a_point2 const &)*arg2);
5408  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point2,0));
5409  return TCL_OK;
5410 fail:
5411  return TCL_ERROR;
5412 }
5413 
5414 
5415 SWIGINTERN int
5416 _wrap_a_point2_sumsq(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5417  a_point2 *arg1 = (a_point2 *) 0 ;
5418  void *argp1 = 0 ;
5419  int res1 = 0 ;
5420  double result;
5421 
5422  if (SWIG_GetArgs(interp, objc, objv,"o:a_point2_sumsq self ",(void *)0) == TCL_ERROR) SWIG_fail;
5423  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5424  if (!SWIG_IsOK(res1)) {
5425  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_sumsq" "', argument " "1"" of type '" "a_point2 const *""'");
5426  }
5427  arg1 = reinterpret_cast< a_point2 * >(argp1);
5428  result = (double)((a_point2 const *)arg1)->sumsq();
5429  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
5430  return TCL_OK;
5431 fail:
5432  return TCL_ERROR;
5433 }
5434 
5435 
5436 SWIGINTERN int
5437 _wrap_a_point2_norm(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5438  a_point2 *arg1 = (a_point2 *) 0 ;
5439  void *argp1 = 0 ;
5440  int res1 = 0 ;
5441  double result;
5442 
5443  if (SWIG_GetArgs(interp, objc, objv,"o:a_point2_norm self ",(void *)0) == TCL_ERROR) SWIG_fail;
5444  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5445  if (!SWIG_IsOK(res1)) {
5446  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_norm" "', argument " "1"" of type '" "a_point2 const *""'");
5447  }
5448  arg1 = reinterpret_cast< a_point2 * >(argp1);
5449  result = (double)((a_point2 const *)arg1)->norm();
5450  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
5451  return TCL_OK;
5452 fail:
5453  return TCL_ERROR;
5454 }
5455 
5456 
5457 SWIGINTERN int
5458 _wrap_a_point2_dist(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5459  a_point2 *arg1 = (a_point2 *) 0 ;
5460  a_point2 *arg2 = 0 ;
5461  void *argp1 = 0 ;
5462  int res1 = 0 ;
5463  void *argp2 ;
5464  int res2 = 0 ;
5465  double result;
5466 
5467  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point2_dist self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5468  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5469  if (!SWIG_IsOK(res1)) {
5470  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_dist" "', argument " "1"" of type '" "a_point2 const *""'");
5471  }
5472  arg1 = reinterpret_cast< a_point2 * >(argp1);
5473  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point2, 0 );
5474  if (!SWIG_IsOK(res2)) {
5475  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_point2_dist" "', argument " "2"" of type '" "a_point2 const &""'");
5476  }
5477  if (!argp2) {
5478  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_point2_dist" "', argument " "2"" of type '" "a_point2 const &""'");
5479  }
5480  arg2 = reinterpret_cast< a_point2 * >(argp2);
5481  result = (double)((a_point2 const *)arg1)->dist((a_point2 const &)*arg2);
5482  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
5483  return TCL_OK;
5484 fail:
5485  return TCL_ERROR;
5486 }
5487 
5488 
5489 SWIGINTERN int
5490 _wrap_a_point2_normalise(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5491  a_point2 *arg1 = (a_point2 *) 0 ;
5492  void *argp1 = 0 ;
5493  int res1 = 0 ;
5494  a_point2 *result = 0 ;
5495 
5496  if (SWIG_GetArgs(interp, objc, objv,"o:a_point2_normalise self ",(void *)0) == TCL_ERROR) SWIG_fail;
5497  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5498  if (!SWIG_IsOK(res1)) {
5499  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_normalise" "', argument " "1"" of type '" "a_point2 *""'");
5500  }
5501  arg1 = reinterpret_cast< a_point2 * >(argp1);
5502  result = (a_point2 *) &(arg1)->normalise();
5503  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point2,0));
5504  return TCL_OK;
5505 fail:
5506  return TCL_ERROR;
5507 }
5508 
5509 
5510 SWIGINTERN int
5511 _wrap_new_a_point2__SWIG_4(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5512  std::string arg1 ;
5513  a_point2 *result = 0 ;
5514 
5515  if (SWIG_GetArgs(interp, objc, objv,"o:new_a_point2 s ",(void *)0) == TCL_ERROR) SWIG_fail;
5516  {
5517  std::string *ptr = (std::string *)0;
5518  int res = SWIG_AsPtr_std_string SWIG_TCL_CALL_ARGS_2(objv[1], &ptr);
5519  if (!SWIG_IsOK(res) || !ptr) {
5520  SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "new_a_point2" "', argument " "1"" of type '" "std::string const""'");
5521  }
5522  arg1 = *ptr;
5523  if (SWIG_IsNewObj(res)) delete ptr;
5524  }
5525  result = (a_point2 *)new_a_point2__SWIG_4(arg1);
5526  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point2,0));
5527  return TCL_OK;
5528 fail:
5529  return TCL_ERROR;
5530 }
5531 
5532 
5533 SWIGINTERN int
5534 _wrap_new_a_point2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5535  Tcl_Obj *CONST *argv = objv+1;
5536  int argc = objc-1;
5537  if (argc == 0) {
5538  return _wrap_new_a_point2__SWIG_0(clientData, interp, objc, argv - 1);
5539  }
5540  if (argc == 1) {
5541  int _v;
5542  void *vptr = 0;
5543  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_double, 0);
5544  _v = SWIG_CheckState(res);
5545  if (_v) {
5546  return _wrap_new_a_point2__SWIG_2(clientData, interp, objc, argv - 1);
5547  }
5548  }
5549  if (argc == 1) {
5550  int _v;
5551  void *vptr = 0;
5552  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point2, SWIG_POINTER_NO_NULL);
5553  _v = SWIG_CheckState(res);
5554  if (_v) {
5555  return _wrap_new_a_point2__SWIG_3(clientData, interp, objc, argv - 1);
5556  }
5557  }
5558  if (argc == 1) {
5559  int _v;
5560  int res = SWIG_AsPtr_std_string SWIG_TCL_CALL_ARGS_2(argv[0], (std::string**)(0));
5561  _v = SWIG_CheckState(res);
5562  if (_v) {
5563  return _wrap_new_a_point2__SWIG_4(clientData, interp, objc, argv - 1);
5564  }
5565  }
5566  if (argc == 2) {
5567  int _v;
5568  {
5569  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[0], NULL);
5570  _v = SWIG_CheckState(res);
5571  }
5572  if (_v) {
5573  {
5574  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
5575  _v = SWIG_CheckState(res);
5576  }
5577  if (_v) {
5578  return _wrap_new_a_point2__SWIG_1(clientData, interp, objc, argv - 1);
5579  }
5580  }
5581  }
5582 
5583  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'new_a_point2'.\n"
5584  " Possible C/C++ prototypes are:\n"
5585  " a_point2::a_point2()\n"
5586  " a_point2::a_point2(double,double)\n"
5587  " a_point2::a_point2(double const [2])\n"
5588  " a_point2::a_point2(a_point2 const &)\n"
5589  " a_point2::a_point2(std::string const)\n", TCL_STATIC);
5590  return TCL_ERROR;
5591 }
5592 
5593 
5594 SWIGINTERN int
5595 _wrap_a_point2_negate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5596  a_point2 *arg1 = (a_point2 *) 0 ;
5597  void *argp1 = 0 ;
5598  int res1 = 0 ;
5599  a_point2 *result = 0 ;
5600 
5601  if (SWIG_GetArgs(interp, objc, objv,"o:a_point2_negate self ",(void *)0) == TCL_ERROR) SWIG_fail;
5602  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5603  if (!SWIG_IsOK(res1)) {
5604  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_negate" "', argument " "1"" of type '" "a_point2 *""'");
5605  }
5606  arg1 = reinterpret_cast< a_point2 * >(argp1);
5607  result = (a_point2 *) &a_point2_negate(arg1);
5608  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point2,0));
5609  return TCL_OK;
5610 fail:
5611  return TCL_ERROR;
5612 }
5613 
5614 
5615 SWIGINTERN int
5616 _wrap_a_point2_multiply(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5617  a_point2 *arg1 = (a_point2 *) 0 ;
5618  double arg2 ;
5619  void *argp1 = 0 ;
5620  int res1 = 0 ;
5621  double val2 ;
5622  int ecode2 = 0 ;
5623  a_point2 *result = 0 ;
5624 
5625  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point2_multiply self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5626  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5627  if (!SWIG_IsOK(res1)) {
5628  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_multiply" "', argument " "1"" of type '" "a_point2 *""'");
5629  }
5630  arg1 = reinterpret_cast< a_point2 * >(argp1);
5631  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
5632  if (!SWIG_IsOK(ecode2)) {
5633  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point2_multiply" "', argument " "2"" of type '" "double""'");
5634  }
5635  arg2 = static_cast< double >(val2);
5636  result = (a_point2 *) &a_point2_multiply(arg1,arg2);
5637  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point2,0));
5638  return TCL_OK;
5639 fail:
5640  return TCL_ERROR;
5641 }
5642 
5643 
5644 SWIGINTERN int
5645 _wrap_a_point2_divide(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5646  a_point2 *arg1 = (a_point2 *) 0 ;
5647  double arg2 ;
5648  void *argp1 = 0 ;
5649  int res1 = 0 ;
5650  double val2 ;
5651  int ecode2 = 0 ;
5652  a_point2 *result = 0 ;
5653 
5654  if (SWIG_GetArgs(interp, objc, objv,"oo:a_point2_divide self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5655  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, 0 | 0 );
5656  if (!SWIG_IsOK(res1)) {
5657  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_point2_divide" "', argument " "1"" of type '" "a_point2 *""'");
5658  }
5659  arg1 = reinterpret_cast< a_point2 * >(argp1);
5660  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
5661  if (!SWIG_IsOK(ecode2)) {
5662  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_point2_divide" "', argument " "2"" of type '" "double""'");
5663  }
5664  arg2 = static_cast< double >(val2);
5665  result = (a_point2 *) &a_point2_divide(arg1,arg2);
5666  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_point2,0));
5667  return TCL_OK;
5668 fail:
5669  return TCL_ERROR;
5670 }
5671 
5672 
5673 SWIGINTERN int
5674 _wrap_delete_a_point2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5675  a_point2 *arg1 = (a_point2 *) 0 ;
5676  void *argp1 = 0 ;
5677  int res1 = 0 ;
5678 
5679  if (SWIG_GetArgs(interp, objc, objv,"o:delete_a_point2 self ",(void *)0) == TCL_ERROR) SWIG_fail;
5680  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_point2, SWIG_POINTER_DISOWN | 0 );
5681  if (!SWIG_IsOK(res1)) {
5682  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_a_point2" "', argument " "1"" of type '" "a_point2 *""'");
5683  }
5684  arg1 = reinterpret_cast< a_point2 * >(argp1);
5685  delete arg1;
5686 
5687  return TCL_OK;
5688 fail:
5689  return TCL_ERROR;
5690 }
5691 
5692 
5694 a_point2 *arg1 = (a_point2 *) obj;
5695 delete arg1;
5696 }
5698  {"x", _wrap_a_point2_x},
5699  {"y", _wrap_a_point2_y},
5700  {"set", _wrap_a_point2_set},
5701  {"translate", _wrap_a_point2_translate},
5702  {"rotate", _wrap_a_point2_rotate},
5703  {"equals", _wrap_a_point2_equals},
5704  {"=", _wrap_a_point2_e___},
5705  {"-", _wrap_a_point2_s___},
5706  {"add", _wrap_a_point2_add},
5707  {"subtract", _wrap_a_point2_subtract},
5708  {"sumsq", _wrap_a_point2_sumsq},
5709  {"norm", _wrap_a_point2_norm},
5710  {"dist", _wrap_a_point2_dist},
5711  {"normalise", _wrap_a_point2_normalise},
5712  {"negate", _wrap_a_point2_negate},
5713  {"multiply", _wrap_a_point2_multiply},
5714  {"divide", _wrap_a_point2_divide},
5715  {0,0}
5716 };
5718  {0,0,0}
5719 };
5721 static const char * swig_a_point2_base_names[] = {"a_geom_base *",0};
5723 SWIGINTERN int
5724 _wrap_dist__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5725  a_point2 *arg1 = 0 ;
5726  a_point2 *arg2 = 0 ;
5727  void *argp1 ;
5728  int res1 = 0 ;
5729  void *argp2 ;
5730  int res2 = 0 ;
5731  double result;
5732 
5733  if (SWIG_GetArgs(interp, objc, objv,"oo:dist a b ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5734  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point2, 0 );
5735  if (!SWIG_IsOK(res1)) {
5736  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "dist" "', argument " "1"" of type '" "a_point2 const &""'");
5737  }
5738  if (!argp1) {
5739  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "dist" "', argument " "1"" of type '" "a_point2 const &""'");
5740  }
5741  arg1 = reinterpret_cast< a_point2 * >(argp1);
5742  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point2, 0 );
5743  if (!SWIG_IsOK(res2)) {
5744  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "dist" "', argument " "2"" of type '" "a_point2 const &""'");
5745  }
5746  if (!argp2) {
5747  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "dist" "', argument " "2"" of type '" "a_point2 const &""'");
5748  }
5749  arg2 = reinterpret_cast< a_point2 * >(argp2);
5750  result = (double)dist((a_point2 const &)*arg1,(a_point2 const &)*arg2);
5751  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
5752  return TCL_OK;
5753 fail:
5754  return TCL_ERROR;
5755 }
5756 
5757 
5758 SWIGINTERN int
5759 _wrap_dist(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5760  Tcl_Obj *CONST *argv = objv+1;
5761  int argc = objc-1;
5762  if (argc == 2) {
5763  int _v;
5764  void *vptr = 0;
5765  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
5766  _v = SWIG_CheckState(res);
5767  if (_v) {
5768  void *vptr = 0;
5769  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
5770  _v = SWIG_CheckState(res);
5771  if (_v) {
5772  return _wrap_dist__SWIG_0(clientData, interp, objc, argv - 1);
5773  }
5774  }
5775  }
5776  if (argc == 2) {
5777  int _v;
5778  void *vptr = 0;
5779  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point2, SWIG_POINTER_NO_NULL);
5780  _v = SWIG_CheckState(res);
5781  if (_v) {
5782  void *vptr = 0;
5783  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point2, SWIG_POINTER_NO_NULL);
5784  _v = SWIG_CheckState(res);
5785  if (_v) {
5786  return _wrap_dist__SWIG_1(clientData, interp, objc, argv - 1);
5787  }
5788  }
5789  }
5790 
5791  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'dist'.\n"
5792  " Possible C/C++ prototypes are:\n"
5793  " dist(a_point const &,a_point const &)\n"
5794  " dist(a_point2 const &,a_point2 const &)\n", TCL_STATIC);
5795  return TCL_ERROR;
5796 }
5797 
5798 
5799 SWIGINTERN int
5800 _wrap_angle__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5801  a_point2 *arg1 = 0 ;
5802  a_point2 *arg2 = 0 ;
5803  void *argp1 ;
5804  int res1 = 0 ;
5805  void *argp2 ;
5806  int res2 = 0 ;
5807  double result;
5808 
5809  if (SWIG_GetArgs(interp, objc, objv,"oo:angle a b ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5810  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point2, 0 );
5811  if (!SWIG_IsOK(res1)) {
5812  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "angle" "', argument " "1"" of type '" "a_point2 const &""'");
5813  }
5814  if (!argp1) {
5815  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "angle" "', argument " "1"" of type '" "a_point2 const &""'");
5816  }
5817  arg1 = reinterpret_cast< a_point2 * >(argp1);
5818  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point2, 0 );
5819  if (!SWIG_IsOK(res2)) {
5820  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "angle" "', argument " "2"" of type '" "a_point2 const &""'");
5821  }
5822  if (!argp2) {
5823  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "angle" "', argument " "2"" of type '" "a_point2 const &""'");
5824  }
5825  arg2 = reinterpret_cast< a_point2 * >(argp2);
5826  result = (double)angle((a_point2 const &)*arg1,(a_point2 const &)*arg2);
5827  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
5828  return TCL_OK;
5829 fail:
5830  return TCL_ERROR;
5831 }
5832 
5833 
5834 SWIGINTERN int
5835 _wrap_angle(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5836  Tcl_Obj *CONST *argv = objv+1;
5837  int argc = objc-1;
5838  if (argc == 2) {
5839  int _v;
5840  void *vptr = 0;
5841  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
5842  _v = SWIG_CheckState(res);
5843  if (_v) {
5844  void *vptr = 0;
5845  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
5846  _v = SWIG_CheckState(res);
5847  if (_v) {
5848  return _wrap_angle__SWIG_0(clientData, interp, objc, argv - 1);
5849  }
5850  }
5851  }
5852  if (argc == 2) {
5853  int _v;
5854  void *vptr = 0;
5855  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point2, SWIG_POINTER_NO_NULL);
5856  _v = SWIG_CheckState(res);
5857  if (_v) {
5858  void *vptr = 0;
5859  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point2, SWIG_POINTER_NO_NULL);
5860  _v = SWIG_CheckState(res);
5861  if (_v) {
5862  return _wrap_angle__SWIG_1(clientData, interp, objc, argv - 1);
5863  }
5864  }
5865  }
5866 
5867  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'angle'.\n"
5868  " Possible C/C++ prototypes are:\n"
5869  " angle(a_point,a_point)\n"
5870  " angle(a_point2 const &,a_point2 const &)\n", TCL_STATIC);
5871  return TCL_ERROR;
5872 }
5873 
5874 
5875 SWIGINTERN int
5876 _wrap_average__SWIG_2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5877  a_point2 *arg1 = 0 ;
5878  a_point2 *arg2 = 0 ;
5879  double arg3 ;
5880  void *argp1 ;
5881  int res1 = 0 ;
5882  void *argp2 ;
5883  int res2 = 0 ;
5884  double val3 ;
5885  int ecode3 = 0 ;
5886  a_point2 result;
5887 
5888  if (SWIG_GetArgs(interp, objc, objv,"ooo:average a b f ",(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5889  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point2, 0 );
5890  if (!SWIG_IsOK(res1)) {
5891  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "average" "', argument " "1"" of type '" "a_point2 const &""'");
5892  }
5893  if (!argp1) {
5894  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "average" "', argument " "1"" of type '" "a_point2 const &""'");
5895  }
5896  arg1 = reinterpret_cast< a_point2 * >(argp1);
5897  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point2, 0 );
5898  if (!SWIG_IsOK(res2)) {
5899  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "average" "', argument " "2"" of type '" "a_point2 const &""'");
5900  }
5901  if (!argp2) {
5902  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "average" "', argument " "2"" of type '" "a_point2 const &""'");
5903  }
5904  arg2 = reinterpret_cast< a_point2 * >(argp2);
5905  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
5906  if (!SWIG_IsOK(ecode3)) {
5907  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "average" "', argument " "3"" of type '" "double""'");
5908  }
5909  arg3 = static_cast< double >(val3);
5910  result = average((a_point2 const &)*arg1,(a_point2 const &)*arg2,arg3);
5911  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point2(static_cast< const a_point2& >(result))), SWIGTYPE_p_a_point2, SWIG_POINTER_OWN | 0 ));
5912  return TCL_OK;
5913 fail:
5914  return TCL_ERROR;
5915 }
5916 
5917 
5918 SWIGINTERN int
5919 _wrap_average__SWIG_3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5920  a_point2 *arg1 = 0 ;
5921  a_point2 *arg2 = 0 ;
5922  void *argp1 ;
5923  int res1 = 0 ;
5924  void *argp2 ;
5925  int res2 = 0 ;
5926  a_point2 result;
5927 
5928  if (SWIG_GetArgs(interp, objc, objv,"oo:average a b ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
5929  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point2, 0 );
5930  if (!SWIG_IsOK(res1)) {
5931  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "average" "', argument " "1"" of type '" "a_point2 const &""'");
5932  }
5933  if (!argp1) {
5934  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "average" "', argument " "1"" of type '" "a_point2 const &""'");
5935  }
5936  arg1 = reinterpret_cast< a_point2 * >(argp1);
5937  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point2, 0 );
5938  if (!SWIG_IsOK(res2)) {
5939  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "average" "', argument " "2"" of type '" "a_point2 const &""'");
5940  }
5941  if (!argp2) {
5942  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "average" "', argument " "2"" of type '" "a_point2 const &""'");
5943  }
5944  arg2 = reinterpret_cast< a_point2 * >(argp2);
5945  result = average((a_point2 const &)*arg1,(a_point2 const &)*arg2);
5946  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point2(static_cast< const a_point2& >(result))), SWIGTYPE_p_a_point2, SWIG_POINTER_OWN | 0 ));
5947  return TCL_OK;
5948 fail:
5949  return TCL_ERROR;
5950 }
5951 
5952 
5953 SWIGINTERN int
5954 _wrap_average(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
5955  Tcl_Obj *CONST *argv = objv+1;
5956  int argc = objc-1;
5957  if (argc == 2) {
5958  int _v;
5959  void *vptr = 0;
5960  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
5961  _v = SWIG_CheckState(res);
5962  if (_v) {
5963  void *vptr = 0;
5964  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
5965  _v = SWIG_CheckState(res);
5966  if (_v) {
5967  return _wrap_average__SWIG_1(clientData, interp, objc, argv - 1);
5968  }
5969  }
5970  }
5971  if (argc == 2) {
5972  int _v;
5973  void *vptr = 0;
5974  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point2, SWIG_POINTER_NO_NULL);
5975  _v = SWIG_CheckState(res);
5976  if (_v) {
5977  void *vptr = 0;
5978  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point2, SWIG_POINTER_NO_NULL);
5979  _v = SWIG_CheckState(res);
5980  if (_v) {
5981  return _wrap_average__SWIG_3(clientData, interp, objc, argv - 1);
5982  }
5983  }
5984  }
5985  if (argc == 3) {
5986  int _v;
5987  void *vptr = 0;
5988  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point2, SWIG_POINTER_NO_NULL);
5989  _v = SWIG_CheckState(res);
5990  if (_v) {
5991  void *vptr = 0;
5992  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point2, SWIG_POINTER_NO_NULL);
5993  _v = SWIG_CheckState(res);
5994  if (_v) {
5995  {
5996  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[2], NULL);
5997  _v = SWIG_CheckState(res);
5998  }
5999  if (_v) {
6000  return _wrap_average__SWIG_2(clientData, interp, objc, argv - 1);
6001  }
6002  }
6003  }
6004  }
6005  if (argc == 3) {
6006  int _v;
6007  void *vptr = 0;
6008  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
6009  _v = SWIG_CheckState(res);
6010  if (_v) {
6011  void *vptr = 0;
6012  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
6013  _v = SWIG_CheckState(res);
6014  if (_v) {
6015  {
6016  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[2], NULL);
6017  _v = SWIG_CheckState(res);
6018  }
6019  if (_v) {
6020  return _wrap_average__SWIG_0(clientData, interp, objc, argv - 1);
6021  }
6022  }
6023  }
6024  }
6025 
6026  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'average'.\n"
6027  " Possible C/C++ prototypes are:\n"
6028  " average(a_point const &,a_point const &,double)\n"
6029  " average(a_point const &,a_point const &)\n"
6030  " average(a_point2 const &,a_point2 const &,double)\n"
6031  " average(a_point2 const &,a_point2 const &)\n", TCL_STATIC);
6032  return TCL_ERROR;
6033 }
6034 
6035 
6036 SWIGINTERN int
6037 _wrap_average_rot__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6038  a_point2 *arg1 = 0 ;
6039  a_point2 *arg2 = 0 ;
6040  double arg3 ;
6041  void *argp1 ;
6042  int res1 = 0 ;
6043  void *argp2 ;
6044  int res2 = 0 ;
6045  double val3 ;
6046  int ecode3 = 0 ;
6047  a_point2 result;
6048 
6049  if (SWIG_GetArgs(interp, objc, objv,"ooo:average_rot a b f ",(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
6050  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point2, 0 );
6051  if (!SWIG_IsOK(res1)) {
6052  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "average_rot" "', argument " "1"" of type '" "a_point2 const &""'");
6053  }
6054  if (!argp1) {
6055  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "average_rot" "', argument " "1"" of type '" "a_point2 const &""'");
6056  }
6057  arg1 = reinterpret_cast< a_point2 * >(argp1);
6058  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point2, 0 );
6059  if (!SWIG_IsOK(res2)) {
6060  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "average_rot" "', argument " "2"" of type '" "a_point2 const &""'");
6061  }
6062  if (!argp2) {
6063  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "average_rot" "', argument " "2"" of type '" "a_point2 const &""'");
6064  }
6065  arg2 = reinterpret_cast< a_point2 * >(argp2);
6066  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
6067  if (!SWIG_IsOK(ecode3)) {
6068  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "average_rot" "', argument " "3"" of type '" "double""'");
6069  }
6070  arg3 = static_cast< double >(val3);
6071  result = average_rot((a_point2 const &)*arg1,(a_point2 const &)*arg2,arg3);
6072  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point2(static_cast< const a_point2& >(result))), SWIGTYPE_p_a_point2, SWIG_POINTER_OWN | 0 ));
6073  return TCL_OK;
6074 fail:
6075  return TCL_ERROR;
6076 }
6077 
6078 
6079 SWIGINTERN int
6080 _wrap_average_rot__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6081  a_point2 *arg1 = 0 ;
6082  a_point2 *arg2 = 0 ;
6083  void *argp1 ;
6084  int res1 = 0 ;
6085  void *argp2 ;
6086  int res2 = 0 ;
6087  a_point2 result;
6088 
6089  if (SWIG_GetArgs(interp, objc, objv,"oo:average_rot a b ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
6090  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point2, 0 );
6091  if (!SWIG_IsOK(res1)) {
6092  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "average_rot" "', argument " "1"" of type '" "a_point2 const &""'");
6093  }
6094  if (!argp1) {
6095  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "average_rot" "', argument " "1"" of type '" "a_point2 const &""'");
6096  }
6097  arg1 = reinterpret_cast< a_point2 * >(argp1);
6098  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point2, 0 );
6099  if (!SWIG_IsOK(res2)) {
6100  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "average_rot" "', argument " "2"" of type '" "a_point2 const &""'");
6101  }
6102  if (!argp2) {
6103  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "average_rot" "', argument " "2"" of type '" "a_point2 const &""'");
6104  }
6105  arg2 = reinterpret_cast< a_point2 * >(argp2);
6106  result = average_rot((a_point2 const &)*arg1,(a_point2 const &)*arg2);
6107  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point2(static_cast< const a_point2& >(result))), SWIGTYPE_p_a_point2, SWIG_POINTER_OWN | 0 ));
6108  return TCL_OK;
6109 fail:
6110  return TCL_ERROR;
6111 }
6112 
6113 
6114 SWIGINTERN int
6115 _wrap_average_rot(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6116  Tcl_Obj *CONST *argv = objv+1;
6117  int argc = objc-1;
6118  if (argc == 2) {
6119  int _v;
6120  void *vptr = 0;
6121  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point2, SWIG_POINTER_NO_NULL);
6122  _v = SWIG_CheckState(res);
6123  if (_v) {
6124  void *vptr = 0;
6125  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point2, SWIG_POINTER_NO_NULL);
6126  _v = SWIG_CheckState(res);
6127  if (_v) {
6128  return _wrap_average_rot__SWIG_1(clientData, interp, objc, argv - 1);
6129  }
6130  }
6131  }
6132  if (argc == 3) {
6133  int _v;
6134  void *vptr = 0;
6135  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point2, SWIG_POINTER_NO_NULL);
6136  _v = SWIG_CheckState(res);
6137  if (_v) {
6138  void *vptr = 0;
6139  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point2, SWIG_POINTER_NO_NULL);
6140  _v = SWIG_CheckState(res);
6141  if (_v) {
6142  {
6143  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[2], NULL);
6144  _v = SWIG_CheckState(res);
6145  }
6146  if (_v) {
6147  return _wrap_average_rot__SWIG_0(clientData, interp, objc, argv - 1);
6148  }
6149  }
6150  }
6151  }
6152 
6153  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'average_rot'.\n"
6154  " Possible C/C++ prototypes are:\n"
6155  " average_rot(a_point2 const &,a_point2 const &,double)\n"
6156  " average_rot(a_point2 const &,a_point2 const &)\n", TCL_STATIC);
6157  return TCL_ERROR;
6158 }
6159 
6160 
6161 SWIGINTERN int
6162 _wrap_new_a_segment__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6163  a_segment *result = 0 ;
6164 
6165  if (SWIG_GetArgs(interp, objc, objv,":new_a_segment ") == TCL_ERROR) SWIG_fail;
6166  try {
6167  result = (a_segment *)new a_segment();
6168  } catch(a_segment::denomin_error &_e) {
6170  }
6171  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_segment,0));
6172  return TCL_OK;
6173 fail:
6174  return TCL_ERROR;
6175 }
6176 
6177 
6178 SWIGINTERN int
6179 _wrap_new_a_segment__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6180  a_point arg1 ;
6181  a_point arg2 ;
6182  void *argp1 ;
6183  int res1 = 0 ;
6184  void *argp2 ;
6185  int res2 = 0 ;
6186  a_segment *result = 0 ;
6187 
6188  if (SWIG_GetArgs(interp, objc, objv,"oo:new_a_segment p1 p2 ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
6189  {
6190  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point, 0 );
6191  if (!SWIG_IsOK(res1)) {
6192  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_a_segment" "', argument " "1"" of type '" "a_point const""'");
6193  }
6194  if (!argp1) {
6195  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_segment" "', argument " "1"" of type '" "a_point const""'");
6196  } else {
6197  arg1 = *(reinterpret_cast< a_point * >(argp1));
6198  }
6199  }
6200  {
6201  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
6202  if (!SWIG_IsOK(res2)) {
6203  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_a_segment" "', argument " "2"" of type '" "a_point const""'");
6204  }
6205  if (!argp2) {
6206  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_segment" "', argument " "2"" of type '" "a_point const""'");
6207  } else {
6208  arg2 = *(reinterpret_cast< a_point * >(argp2));
6209  }
6210  }
6211  try {
6212  result = (a_segment *)new a_segment(arg1,arg2);
6213  } catch(a_segment::denomin_error &_e) {
6215  }
6216  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_segment,0));
6217  return TCL_OK;
6218 fail:
6219  return TCL_ERROR;
6220 }
6221 
6222 
6223 SWIGINTERN int
6224 _wrap_new_a_segment__SWIG_2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6225  a_segment *arg1 = 0 ;
6226  void *argp1 ;
6227  int res1 = 0 ;
6228  a_segment *result = 0 ;
6229 
6230  if (SWIG_GetArgs(interp, objc, objv,"o:new_a_segment s ",(void *)0) == TCL_ERROR) SWIG_fail;
6231  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_segment, 0 );
6232  if (!SWIG_IsOK(res1)) {
6233  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_a_segment" "', argument " "1"" of type '" "a_segment const &""'");
6234  }
6235  if (!argp1) {
6236  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_segment" "', argument " "1"" of type '" "a_segment const &""'");
6237  }
6238  arg1 = reinterpret_cast< a_segment * >(argp1);
6239  try {
6240  result = (a_segment *)new a_segment((a_segment const &)*arg1);
6241  } catch(a_segment::denomin_error &_e) {
6243  }
6244  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_segment,0));
6245  return TCL_OK;
6246 fail:
6247  return TCL_ERROR;
6248 }
6249 
6250 
6251 SWIGINTERN int
6252 _wrap_new_a_segment(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6253  Tcl_Obj *CONST *argv = objv+1;
6254  int argc = objc-1;
6255  if (argc == 0) {
6256  return _wrap_new_a_segment__SWIG_0(clientData, interp, objc, argv - 1);
6257  }
6258  if (argc == 1) {
6259  int _v;
6260  void *vptr = 0;
6261  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_segment, SWIG_POINTER_NO_NULL);
6262  _v = SWIG_CheckState(res);
6263  if (_v) {
6264  return _wrap_new_a_segment__SWIG_2(clientData, interp, objc, argv - 1);
6265  }
6266  }
6267  if (argc == 2) {
6268  int _v;
6269  void *vptr = 0;
6270  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
6271  _v = SWIG_CheckState(res);
6272  if (_v) {
6273  void *vptr = 0;
6274  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
6275  _v = SWIG_CheckState(res);
6276  if (_v) {
6277  return _wrap_new_a_segment__SWIG_1(clientData, interp, objc, argv - 1);
6278  }
6279  }
6280  }
6281 
6282  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'new_a_segment'.\n"
6283  " Possible C/C++ prototypes are:\n"
6284  " a_segment::a_segment()\n"
6285  " a_segment::a_segment(a_point const,a_point const)\n"
6286  " a_segment::a_segment(a_segment const &)\n", TCL_STATIC);
6287  return TCL_ERROR;
6288 }
6289 
6290 
6291 SWIGINTERN int
6292 _wrap_a_segment_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6293  std::string result;
6294 
6295  if (SWIG_GetArgs(interp, objc, objv,":a_segment_help ") == TCL_ERROR) SWIG_fail;
6296  try {
6297  result = a_segment::help();
6298  } catch(a_segment::denomin_error &_e) {
6300  }
6301  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
6302  return TCL_OK;
6303 fail:
6304  return TCL_ERROR;
6305 }
6306 
6307 
6308 SWIGINTERN int
6309 _wrap_a_segment_p1__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6310  a_segment *arg1 = (a_segment *) 0 ;
6311  void *argp1 = 0 ;
6312  int res1 = 0 ;
6313  a_point result;
6314 
6315  if (SWIG_GetArgs(interp, objc, objv,"o:a_segment_p1 self ",(void *)0) == TCL_ERROR) SWIG_fail;
6316  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6317  if (!SWIG_IsOK(res1)) {
6318  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_p1" "', argument " "1"" of type '" "a_segment const *""'");
6319  }
6320  arg1 = reinterpret_cast< a_segment * >(argp1);
6321  try {
6322  result = ((a_segment const *)arg1)->p1();
6323  } catch(a_segment::denomin_error &_e) {
6325  }
6326  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
6327  return TCL_OK;
6328 fail:
6329  return TCL_ERROR;
6330 }
6331 
6332 
6333 SWIGINTERN int
6334 _wrap_a_segment_p2__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6335  a_segment *arg1 = (a_segment *) 0 ;
6336  void *argp1 = 0 ;
6337  int res1 = 0 ;
6338  a_point result;
6339 
6340  if (SWIG_GetArgs(interp, objc, objv,"o:a_segment_p2 self ",(void *)0) == TCL_ERROR) SWIG_fail;
6341  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6342  if (!SWIG_IsOK(res1)) {
6343  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_p2" "', argument " "1"" of type '" "a_segment const *""'");
6344  }
6345  arg1 = reinterpret_cast< a_segment * >(argp1);
6346  try {
6347  result = ((a_segment const *)arg1)->p2();
6348  } catch(a_segment::denomin_error &_e) {
6350  }
6351  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
6352  return TCL_OK;
6353 fail:
6354  return TCL_ERROR;
6355 }
6356 
6357 
6358 SWIGINTERN int
6359 _wrap_a_segment_vec(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6360  a_segment *arg1 = (a_segment *) 0 ;
6361  void *argp1 = 0 ;
6362  int res1 = 0 ;
6363  a_point result;
6364 
6365  if (SWIG_GetArgs(interp, objc, objv,"o:a_segment_vec self ",(void *)0) == TCL_ERROR) SWIG_fail;
6366  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6367  if (!SWIG_IsOK(res1)) {
6368  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_vec" "', argument " "1"" of type '" "a_segment const *""'");
6369  }
6370  arg1 = reinterpret_cast< a_segment * >(argp1);
6371  try {
6372  result = ((a_segment const *)arg1)->vec();
6373  } catch(a_segment::denomin_error &_e) {
6375  }
6376  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
6377  return TCL_OK;
6378 fail:
6379  return TCL_ERROR;
6380 }
6381 
6382 
6383 SWIGINTERN int
6384 _wrap_a_segment_dir(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6385  a_segment *arg1 = (a_segment *) 0 ;
6386  void *argp1 = 0 ;
6387  int res1 = 0 ;
6388  a_point result;
6389 
6390  if (SWIG_GetArgs(interp, objc, objv,"o:a_segment_dir self ",(void *)0) == TCL_ERROR) SWIG_fail;
6391  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6392  if (!SWIG_IsOK(res1)) {
6393  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_dir" "', argument " "1"" of type '" "a_segment const *""'");
6394  }
6395  arg1 = reinterpret_cast< a_segment * >(argp1);
6396  try {
6397  result = ((a_segment const *)arg1)->dir();
6398  } catch(a_segment::denomin_error &_e) {
6400  }
6401  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
6402  return TCL_OK;
6403 fail:
6404  return TCL_ERROR;
6405 }
6406 
6407 
6408 SWIGINTERN int
6409 _wrap_a_segment_c(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6410  a_segment *arg1 = (a_segment *) 0 ;
6411  void *argp1 = 0 ;
6412  int res1 = 0 ;
6413  a_point result;
6414 
6415  if (SWIG_GetArgs(interp, objc, objv,"o:a_segment_c self ",(void *)0) == TCL_ERROR) SWIG_fail;
6416  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6417  if (!SWIG_IsOK(res1)) {
6418  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_c" "', argument " "1"" of type '" "a_segment const *""'");
6419  }
6420  arg1 = reinterpret_cast< a_segment * >(argp1);
6421  try {
6422  result = ((a_segment const *)arg1)->c();
6423  } catch(a_segment::denomin_error &_e) {
6425  }
6426  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
6427  return TCL_OK;
6428 fail:
6429  return TCL_ERROR;
6430 }
6431 
6432 
6433 SWIGINTERN int
6434 _wrap_a_segment_p1__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6435  a_segment *arg1 = (a_segment *) 0 ;
6436  a_point arg2 ;
6437  void *argp1 = 0 ;
6438  int res1 = 0 ;
6439  void *argp2 ;
6440  int res2 = 0 ;
6441 
6442  if (SWIG_GetArgs(interp, objc, objv,"oo:a_segment_p1 self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
6443  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6444  if (!SWIG_IsOK(res1)) {
6445  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_p1" "', argument " "1"" of type '" "a_segment *""'");
6446  }
6447  arg1 = reinterpret_cast< a_segment * >(argp1);
6448  {
6449  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
6450  if (!SWIG_IsOK(res2)) {
6451  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_segment_p1" "', argument " "2"" of type '" "a_point const""'");
6452  }
6453  if (!argp2) {
6454  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_p1" "', argument " "2"" of type '" "a_point const""'");
6455  } else {
6456  arg2 = *(reinterpret_cast< a_point * >(argp2));
6457  }
6458  }
6459  try {
6460  (arg1)->p1(arg2);
6461  } catch(a_segment::denomin_error &_e) {
6463  }
6464 
6465  return TCL_OK;
6466 fail:
6467  return TCL_ERROR;
6468 }
6469 
6470 
6471 SWIGINTERN int
6472 _wrap_a_segment_p1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6473  Tcl_Obj *CONST *argv = objv+1;
6474  int argc = objc-1;
6475  if (argc == 1) {
6476  int _v;
6477  void *vptr = 0;
6478  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_segment, 0);
6479  _v = SWIG_CheckState(res);
6480  if (_v) {
6481  return _wrap_a_segment_p1__SWIG_0(clientData, interp, objc, argv - 1);
6482  }
6483  }
6484  if (argc == 2) {
6485  int _v;
6486  void *vptr = 0;
6487  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_segment, 0);
6488  _v = SWIG_CheckState(res);
6489  if (_v) {
6490  void *vptr = 0;
6491  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
6492  _v = SWIG_CheckState(res);
6493  if (_v) {
6494  return _wrap_a_segment_p1__SWIG_1(clientData, interp, objc, argv - 1);
6495  }
6496  }
6497  }
6498 
6499  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_segment_p1'.\n"
6500  " Possible C/C++ prototypes are:\n"
6501  " a_segment::p1() const\n"
6502  " a_segment::p1(a_point const)\n", TCL_STATIC);
6503  return TCL_ERROR;
6504 }
6505 
6506 
6507 SWIGINTERN int
6508 _wrap_a_segment_p2__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6509  a_segment *arg1 = (a_segment *) 0 ;
6510  a_point arg2 ;
6511  void *argp1 = 0 ;
6512  int res1 = 0 ;
6513  void *argp2 ;
6514  int res2 = 0 ;
6515 
6516  if (SWIG_GetArgs(interp, objc, objv,"oo:a_segment_p2 self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
6517  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6518  if (!SWIG_IsOK(res1)) {
6519  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_p2" "', argument " "1"" of type '" "a_segment *""'");
6520  }
6521  arg1 = reinterpret_cast< a_segment * >(argp1);
6522  {
6523  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
6524  if (!SWIG_IsOK(res2)) {
6525  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_segment_p2" "', argument " "2"" of type '" "a_point const""'");
6526  }
6527  if (!argp2) {
6528  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_p2" "', argument " "2"" of type '" "a_point const""'");
6529  } else {
6530  arg2 = *(reinterpret_cast< a_point * >(argp2));
6531  }
6532  }
6533  try {
6534  (arg1)->p2(arg2);
6535  } catch(a_segment::denomin_error &_e) {
6537  }
6538 
6539  return TCL_OK;
6540 fail:
6541  return TCL_ERROR;
6542 }
6543 
6544 
6545 SWIGINTERN int
6546 _wrap_a_segment_p2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6547  Tcl_Obj *CONST *argv = objv+1;
6548  int argc = objc-1;
6549  if (argc == 1) {
6550  int _v;
6551  void *vptr = 0;
6552  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_segment, 0);
6553  _v = SWIG_CheckState(res);
6554  if (_v) {
6555  return _wrap_a_segment_p2__SWIG_0(clientData, interp, objc, argv - 1);
6556  }
6557  }
6558  if (argc == 2) {
6559  int _v;
6560  void *vptr = 0;
6561  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_segment, 0);
6562  _v = SWIG_CheckState(res);
6563  if (_v) {
6564  void *vptr = 0;
6565  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
6566  _v = SWIG_CheckState(res);
6567  if (_v) {
6568  return _wrap_a_segment_p2__SWIG_1(clientData, interp, objc, argv - 1);
6569  }
6570  }
6571  }
6572 
6573  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_segment_p2'.\n"
6574  " Possible C/C++ prototypes are:\n"
6575  " a_segment::p2() const\n"
6576  " a_segment::p2(a_point const)\n", TCL_STATIC);
6577  return TCL_ERROR;
6578 }
6579 
6580 
6581 SWIGINTERN int
6582 _wrap_a_segment_translate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6583  a_segment *arg1 = (a_segment *) 0 ;
6584  double arg2 ;
6585  double arg3 ;
6586  double arg4 ;
6587  void *argp1 = 0 ;
6588  int res1 = 0 ;
6589  double val2 ;
6590  int ecode2 = 0 ;
6591  double val3 ;
6592  int ecode3 = 0 ;
6593  double val4 ;
6594  int ecode4 = 0 ;
6595  a_segment *result = 0 ;
6596 
6597  if (SWIG_GetArgs(interp, objc, objv,"oooo:a_segment_translate self x y z ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
6598  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6599  if (!SWIG_IsOK(res1)) {
6600  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_translate" "', argument " "1"" of type '" "a_segment *""'");
6601  }
6602  arg1 = reinterpret_cast< a_segment * >(argp1);
6603  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
6604  if (!SWIG_IsOK(ecode2)) {
6605  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_segment_translate" "', argument " "2"" of type '" "double""'");
6606  }
6607  arg2 = static_cast< double >(val2);
6608  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
6609  if (!SWIG_IsOK(ecode3)) {
6610  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "a_segment_translate" "', argument " "3"" of type '" "double""'");
6611  }
6612  arg3 = static_cast< double >(val3);
6613  ecode4 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[4], &val4);
6614  if (!SWIG_IsOK(ecode4)) {
6615  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "a_segment_translate" "', argument " "4"" of type '" "double""'");
6616  }
6617  arg4 = static_cast< double >(val4);
6618  try {
6619  result = (a_segment *) &(arg1)->translate(arg2,arg3,arg4);
6620  } catch(a_segment::denomin_error &_e) {
6622  }
6623  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_segment,0));
6624  return TCL_OK;
6625 fail:
6626  return TCL_ERROR;
6627 }
6628 
6629 
6630 SWIGINTERN int
6631 _wrap_a_segment_rotate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6632  a_segment *arg1 = (a_segment *) 0 ;
6633  a_point *arg2 = 0 ;
6634  a_point *arg3 = 0 ;
6635  a_point *arg4 = 0 ;
6636  void *argp1 = 0 ;
6637  int res1 = 0 ;
6638  void *argp2 ;
6639  int res2 = 0 ;
6640  void *argp3 ;
6641  int res3 = 0 ;
6642  void *argp4 ;
6643  int res4 = 0 ;
6644  a_segment *result = 0 ;
6645 
6646  if (SWIG_GetArgs(interp, objc, objv,"oooo:a_segment_rotate self x_axis y_axis z_axis ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
6647  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6648  if (!SWIG_IsOK(res1)) {
6649  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_rotate" "', argument " "1"" of type '" "a_segment *""'");
6650  }
6651  arg1 = reinterpret_cast< a_segment * >(argp1);
6652  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
6653  if (!SWIG_IsOK(res2)) {
6654  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_segment_rotate" "', argument " "2"" of type '" "a_point const &""'");
6655  }
6656  if (!argp2) {
6657  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_rotate" "', argument " "2"" of type '" "a_point const &""'");
6658  }
6659  arg2 = reinterpret_cast< a_point * >(argp2);
6660  res3 = SWIG_ConvertPtr(objv[3], &argp3, SWIGTYPE_p_a_point, 0 );
6661  if (!SWIG_IsOK(res3)) {
6662  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "a_segment_rotate" "', argument " "3"" of type '" "a_point const &""'");
6663  }
6664  if (!argp3) {
6665  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_rotate" "', argument " "3"" of type '" "a_point const &""'");
6666  }
6667  arg3 = reinterpret_cast< a_point * >(argp3);
6668  res4 = SWIG_ConvertPtr(objv[4], &argp4, SWIGTYPE_p_a_point, 0 );
6669  if (!SWIG_IsOK(res4)) {
6670  SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "a_segment_rotate" "', argument " "4"" of type '" "a_point const &""'");
6671  }
6672  if (!argp4) {
6673  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_rotate" "', argument " "4"" of type '" "a_point const &""'");
6674  }
6675  arg4 = reinterpret_cast< a_point * >(argp4);
6676  try {
6677  result = (a_segment *) &(arg1)->rotate((a_point const &)*arg2,(a_point const &)*arg3,(a_point const &)*arg4);
6678  } catch(a_segment::denomin_error &_e) {
6680  }
6681  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_segment,0));
6682  return TCL_OK;
6683 fail:
6684  return TCL_ERROR;
6685 }
6686 
6687 
6688 SWIGINTERN int
6689 _wrap_a_segment_equals(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6690  a_segment *arg1 = (a_segment *) 0 ;
6691  a_segment *arg2 = 0 ;
6692  void *argp1 = 0 ;
6693  int res1 = 0 ;
6694  void *argp2 ;
6695  int res2 = 0 ;
6696  bool result;
6697 
6698  if (SWIG_GetArgs(interp, objc, objv,"oo:a_segment_equals self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
6699  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6700  if (!SWIG_IsOK(res1)) {
6701  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_equals" "', argument " "1"" of type '" "a_segment *""'");
6702  }
6703  arg1 = reinterpret_cast< a_segment * >(argp1);
6704  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_segment, 0 );
6705  if (!SWIG_IsOK(res2)) {
6706  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_segment_equals" "', argument " "2"" of type '" "a_segment const &""'");
6707  }
6708  if (!argp2) {
6709  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_equals" "', argument " "2"" of type '" "a_segment const &""'");
6710  }
6711  arg2 = reinterpret_cast< a_segment * >(argp2);
6712  try {
6713  result = (bool)(arg1)->operator ==((a_segment const &)*arg2);
6714  } catch(a_segment::denomin_error &_e) {
6716  }
6717  Tcl_SetObjResult(interp,SWIG_From_bool(static_cast< bool >(result)));
6718  return TCL_OK;
6719 fail:
6720  return TCL_ERROR;
6721 }
6722 
6723 
6724 SWIGINTERN int
6725 _wrap_a_segment_e___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6726  a_segment *arg1 = (a_segment *) 0 ;
6727  a_segment *arg2 = 0 ;
6728  void *argp1 = 0 ;
6729  int res1 = 0 ;
6730  void *argp2 ;
6731  int res2 = 0 ;
6732  a_segment *result = 0 ;
6733 
6734  if (SWIG_GetArgs(interp, objc, objv,"oo:a_segment_= self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
6735  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6736  if (!SWIG_IsOK(res1)) {
6737  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_=" "', argument " "1"" of type '" "a_segment *""'");
6738  }
6739  arg1 = reinterpret_cast< a_segment * >(argp1);
6740  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_segment, 0 );
6741  if (!SWIG_IsOK(res2)) {
6742  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_segment_=" "', argument " "2"" of type '" "a_segment const &""'");
6743  }
6744  if (!argp2) {
6745  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_=" "', argument " "2"" of type '" "a_segment const &""'");
6746  }
6747  arg2 = reinterpret_cast< a_segment * >(argp2);
6748  try {
6749  result = (a_segment *) &(arg1)->operator =((a_segment const &)*arg2);
6750  } catch(a_segment::denomin_error &_e) {
6752  }
6753  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_segment,0));
6754  return TCL_OK;
6755 fail:
6756  return TCL_ERROR;
6757 }
6758 
6759 
6760 SWIGINTERN int
6761 _wrap_a_segment_length(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6762  a_segment *arg1 = (a_segment *) 0 ;
6763  void *argp1 = 0 ;
6764  int res1 = 0 ;
6765  double result;
6766 
6767  if (SWIG_GetArgs(interp, objc, objv,"o:a_segment_length self ",(void *)0) == TCL_ERROR) SWIG_fail;
6768  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6769  if (!SWIG_IsOK(res1)) {
6770  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_length" "', argument " "1"" of type '" "a_segment const *""'");
6771  }
6772  arg1 = reinterpret_cast< a_segment * >(argp1);
6773  try {
6774  result = (double)((a_segment const *)arg1)->length();
6775  } catch(a_segment::denomin_error &_e) {
6777  }
6778  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
6779  return TCL_OK;
6780 fail:
6781  return TCL_ERROR;
6782 }
6783 
6784 
6785 SWIGINTERN int
6786 _wrap_a_segment_project(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6787  a_segment *arg1 = (a_segment *) 0 ;
6788  a_point arg2 ;
6789  void *argp1 = 0 ;
6790  int res1 = 0 ;
6791  void *argp2 ;
6792  int res2 = 0 ;
6793  double result;
6794 
6795  if (SWIG_GetArgs(interp, objc, objv,"oo:a_segment_project self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
6796  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6797  if (!SWIG_IsOK(res1)) {
6798  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_project" "', argument " "1"" of type '" "a_segment const *""'");
6799  }
6800  arg1 = reinterpret_cast< a_segment * >(argp1);
6801  {
6802  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
6803  if (!SWIG_IsOK(res2)) {
6804  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_segment_project" "', argument " "2"" of type '" "a_point const""'");
6805  }
6806  if (!argp2) {
6807  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_project" "', argument " "2"" of type '" "a_point const""'");
6808  } else {
6809  arg2 = *(reinterpret_cast< a_point * >(argp2));
6810  }
6811  }
6812  try {
6813  result = (double)((a_segment const *)arg1)->project(arg2);
6814  } catch(a_segment::denomin_error &_e) {
6816  }
6817  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
6818  return TCL_OK;
6819 fail:
6820  return TCL_ERROR;
6821 }
6822 
6823 
6824 SWIGINTERN int
6825 _wrap_a_segment_closestl(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6826  a_segment *arg1 = (a_segment *) 0 ;
6827  a_point *arg2 = 0 ;
6828  void *argp1 = 0 ;
6829  int res1 = 0 ;
6830  void *argp2 ;
6831  int res2 = 0 ;
6832  a_point result;
6833 
6834  if (SWIG_GetArgs(interp, objc, objv,"oo:a_segment_closestl self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
6835  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6836  if (!SWIG_IsOK(res1)) {
6837  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_closestl" "', argument " "1"" of type '" "a_segment const *""'");
6838  }
6839  arg1 = reinterpret_cast< a_segment * >(argp1);
6840  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
6841  if (!SWIG_IsOK(res2)) {
6842  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_segment_closestl" "', argument " "2"" of type '" "a_point const &""'");
6843  }
6844  if (!argp2) {
6845  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_closestl" "', argument " "2"" of type '" "a_point const &""'");
6846  }
6847  arg2 = reinterpret_cast< a_point * >(argp2);
6848  try {
6849  result = ((a_segment const *)arg1)->closestl((a_point const &)*arg2);
6850  } catch(a_segment::denomin_error &_e) {
6852  }
6853  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
6854  return TCL_OK;
6855 fail:
6856  return TCL_ERROR;
6857 }
6858 
6859 
6860 SWIGINTERN int
6861 _wrap_a_segment_closest(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6862  a_segment *arg1 = (a_segment *) 0 ;
6863  a_point *arg2 = 0 ;
6864  void *argp1 = 0 ;
6865  int res1 = 0 ;
6866  void *argp2 ;
6867  int res2 = 0 ;
6868  a_point result;
6869 
6870  if (SWIG_GetArgs(interp, objc, objv,"oo:a_segment_closest self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
6871  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6872  if (!SWIG_IsOK(res1)) {
6873  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_closest" "', argument " "1"" of type '" "a_segment const *""'");
6874  }
6875  arg1 = reinterpret_cast< a_segment * >(argp1);
6876  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
6877  if (!SWIG_IsOK(res2)) {
6878  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_segment_closest" "', argument " "2"" of type '" "a_point const &""'");
6879  }
6880  if (!argp2) {
6881  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_closest" "', argument " "2"" of type '" "a_point const &""'");
6882  }
6883  arg2 = reinterpret_cast< a_point * >(argp2);
6884  try {
6885  result = ((a_segment const *)arg1)->closest((a_point const &)*arg2);
6886  } catch(a_segment::denomin_error &_e) {
6888  }
6889  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
6890  return TCL_OK;
6891 fail:
6892  return TCL_ERROR;
6893 }
6894 
6895 
6896 SWIGINTERN int
6897 _wrap_a_segment_distl__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6898  a_segment *arg1 = (a_segment *) 0 ;
6899  a_point *arg2 = 0 ;
6900  void *argp1 = 0 ;
6901  int res1 = 0 ;
6902  void *argp2 ;
6903  int res2 = 0 ;
6904  double result;
6905 
6906  if (SWIG_GetArgs(interp, objc, objv,"oo:a_segment_distl self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
6907  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6908  if (!SWIG_IsOK(res1)) {
6909  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_distl" "', argument " "1"" of type '" "a_segment const *""'");
6910  }
6911  arg1 = reinterpret_cast< a_segment * >(argp1);
6912  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
6913  if (!SWIG_IsOK(res2)) {
6914  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_segment_distl" "', argument " "2"" of type '" "a_point const &""'");
6915  }
6916  if (!argp2) {
6917  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_distl" "', argument " "2"" of type '" "a_point const &""'");
6918  }
6919  arg2 = reinterpret_cast< a_point * >(argp2);
6920  try {
6921  result = (double)((a_segment const *)arg1)->distl((a_point const &)*arg2);
6922  } catch(a_segment::denomin_error &_e) {
6924  }
6925  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
6926  return TCL_OK;
6927 fail:
6928  return TCL_ERROR;
6929 }
6930 
6931 
6932 SWIGINTERN int
6933 _wrap_a_segment_dist__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6934  a_segment *arg1 = (a_segment *) 0 ;
6935  a_point *arg2 = 0 ;
6936  void *argp1 = 0 ;
6937  int res1 = 0 ;
6938  void *argp2 ;
6939  int res2 = 0 ;
6940  double result;
6941 
6942  if (SWIG_GetArgs(interp, objc, objv,"oo:a_segment_dist self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
6943  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6944  if (!SWIG_IsOK(res1)) {
6945  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_dist" "', argument " "1"" of type '" "a_segment const *""'");
6946  }
6947  arg1 = reinterpret_cast< a_segment * >(argp1);
6948  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
6949  if (!SWIG_IsOK(res2)) {
6950  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_segment_dist" "', argument " "2"" of type '" "a_point const &""'");
6951  }
6952  if (!argp2) {
6953  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_dist" "', argument " "2"" of type '" "a_point const &""'");
6954  }
6955  arg2 = reinterpret_cast< a_point * >(argp2);
6956  try {
6957  result = (double)((a_segment const *)arg1)->dist((a_point const &)*arg2);
6958  } catch(a_segment::denomin_error &_e) {
6960  }
6961  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
6962  return TCL_OK;
6963 fail:
6964  return TCL_ERROR;
6965 }
6966 
6967 
6968 SWIGINTERN int
6969 _wrap_a_segment_intersect(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
6970  a_segment *arg1 = (a_segment *) 0 ;
6971  a_segment *arg2 = 0 ;
6972  double *arg3 = 0 ;
6973  double *arg4 = 0 ;
6974  void *argp1 = 0 ;
6975  int res1 = 0 ;
6976  void *argp2 ;
6977  int res2 = 0 ;
6978  double temp3 ;
6979  int res3 = SWIG_TMPOBJ ;
6980  double temp4 ;
6981  int res4 = SWIG_TMPOBJ ;
6982  a_segment result;
6983 
6984  arg3 = &temp3;
6985  arg4 = &temp4;
6986  if (SWIG_GetArgs(interp, objc, objv,"oo:a_segment_intersect self s ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
6987  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
6988  if (!SWIG_IsOK(res1)) {
6989  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_intersect" "', argument " "1"" of type '" "a_segment const *""'");
6990  }
6991  arg1 = reinterpret_cast< a_segment * >(argp1);
6992  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_segment, 0 );
6993  if (!SWIG_IsOK(res2)) {
6994  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_segment_intersect" "', argument " "2"" of type '" "a_segment const &""'");
6995  }
6996  if (!argp2) {
6997  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_intersect" "', argument " "2"" of type '" "a_segment const &""'");
6998  }
6999  arg2 = reinterpret_cast< a_segment * >(argp2);
7000  try {
7001  result = ((a_segment const *)arg1)->intersect((a_segment const &)*arg2,*arg3,*arg4);
7002  } catch(a_segment::denomin_error &_e) {
7004  }
7005  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_segment(static_cast< const a_segment& >(result))), SWIGTYPE_p_a_segment, SWIG_POINTER_OWN | 0 ));
7006  if (SWIG_IsTmpObj(res3)) {
7007  Tcl_ListObjAppendElement(interp,Tcl_GetObjResult(interp),SWIG_From_double((*arg3)));
7008  } else {
7009  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7010  Tcl_ListObjAppendElement(interp,Tcl_GetObjResult(interp),SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
7011  }
7012  if (SWIG_IsTmpObj(res4)) {
7013  Tcl_ListObjAppendElement(interp,Tcl_GetObjResult(interp),SWIG_From_double((*arg4)));
7014  } else {
7015  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7016  Tcl_ListObjAppendElement(interp,Tcl_GetObjResult(interp),SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_double, new_flags));
7017  }
7018  return TCL_OK;
7019 fail:
7020  return TCL_ERROR;
7021 }
7022 
7023 
7024 SWIGINTERN int
7025 _wrap_a_segment_shortest(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7026  a_segment *arg1 = (a_segment *) 0 ;
7027  a_segment *arg2 = 0 ;
7028  double *arg3 = 0 ;
7029  double *arg4 = 0 ;
7030  void *argp1 = 0 ;
7031  int res1 = 0 ;
7032  void *argp2 ;
7033  int res2 = 0 ;
7034  double temp3 ;
7035  int res3 = SWIG_TMPOBJ ;
7036  double temp4 ;
7037  int res4 = SWIG_TMPOBJ ;
7038  a_segment result;
7039 
7040  arg3 = &temp3;
7041  arg4 = &temp4;
7042  if (SWIG_GetArgs(interp, objc, objv,"oo:a_segment_shortest self s ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
7043  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
7044  if (!SWIG_IsOK(res1)) {
7045  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_shortest" "', argument " "1"" of type '" "a_segment const *""'");
7046  }
7047  arg1 = reinterpret_cast< a_segment * >(argp1);
7048  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_segment, 0 );
7049  if (!SWIG_IsOK(res2)) {
7050  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_segment_shortest" "', argument " "2"" of type '" "a_segment const &""'");
7051  }
7052  if (!argp2) {
7053  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_shortest" "', argument " "2"" of type '" "a_segment const &""'");
7054  }
7055  arg2 = reinterpret_cast< a_segment * >(argp2);
7056  try {
7057  result = ((a_segment const *)arg1)->shortest((a_segment const &)*arg2,*arg3,*arg4);
7058  } catch(a_segment::denomin_error &_e) {
7060  }
7061  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_segment(static_cast< const a_segment& >(result))), SWIGTYPE_p_a_segment, SWIG_POINTER_OWN | 0 ));
7062  if (SWIG_IsTmpObj(res3)) {
7063  Tcl_ListObjAppendElement(interp,Tcl_GetObjResult(interp),SWIG_From_double((*arg3)));
7064  } else {
7065  int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7066  Tcl_ListObjAppendElement(interp,Tcl_GetObjResult(interp),SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
7067  }
7068  if (SWIG_IsTmpObj(res4)) {
7069  Tcl_ListObjAppendElement(interp,Tcl_GetObjResult(interp),SWIG_From_double((*arg4)));
7070  } else {
7071  int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0 ) : 0 ;
7072  Tcl_ListObjAppendElement(interp,Tcl_GetObjResult(interp),SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_double, new_flags));
7073  }
7074  return TCL_OK;
7075 fail:
7076  return TCL_ERROR;
7077 }
7078 
7079 
7080 SWIGINTERN int
7081 _wrap_a_segment_distl__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7082  a_segment *arg1 = (a_segment *) 0 ;
7083  a_segment *arg2 = 0 ;
7084  void *argp1 = 0 ;
7085  int res1 = 0 ;
7086  void *argp2 ;
7087  int res2 = 0 ;
7088  double result;
7089 
7090  if (SWIG_GetArgs(interp, objc, objv,"oo:a_segment_distl self s ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
7091  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
7092  if (!SWIG_IsOK(res1)) {
7093  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_distl" "', argument " "1"" of type '" "a_segment const *""'");
7094  }
7095  arg1 = reinterpret_cast< a_segment * >(argp1);
7096  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_segment, 0 );
7097  if (!SWIG_IsOK(res2)) {
7098  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_segment_distl" "', argument " "2"" of type '" "a_segment const &""'");
7099  }
7100  if (!argp2) {
7101  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_distl" "', argument " "2"" of type '" "a_segment const &""'");
7102  }
7103  arg2 = reinterpret_cast< a_segment * >(argp2);
7104  try {
7105  result = (double)((a_segment const *)arg1)->distl((a_segment const &)*arg2);
7106  } catch(a_segment::denomin_error &_e) {
7108  }
7109  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
7110  return TCL_OK;
7111 fail:
7112  return TCL_ERROR;
7113 }
7114 
7115 
7116 SWIGINTERN int
7117 _wrap_a_segment_distl(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7118  Tcl_Obj *CONST *argv = objv+1;
7119  int argc = objc-1;
7120  if (argc == 2) {
7121  int _v;
7122  void *vptr = 0;
7123  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_segment, 0);
7124  _v = SWIG_CheckState(res);
7125  if (_v) {
7126  void *vptr = 0;
7127  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
7128  _v = SWIG_CheckState(res);
7129  if (_v) {
7130  return _wrap_a_segment_distl__SWIG_0(clientData, interp, objc, argv - 1);
7131  }
7132  }
7133  }
7134  if (argc == 2) {
7135  int _v;
7136  void *vptr = 0;
7137  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_segment, 0);
7138  _v = SWIG_CheckState(res);
7139  if (_v) {
7140  void *vptr = 0;
7141  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_segment, SWIG_POINTER_NO_NULL);
7142  _v = SWIG_CheckState(res);
7143  if (_v) {
7144  return _wrap_a_segment_distl__SWIG_1(clientData, interp, objc, argv - 1);
7145  }
7146  }
7147  }
7148 
7149  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_segment_distl'.\n"
7150  " Possible C/C++ prototypes are:\n"
7151  " a_segment::distl(a_point const &) const\n"
7152  " a_segment::distl(a_segment const &) const\n", TCL_STATIC);
7153  return TCL_ERROR;
7154 }
7155 
7156 
7157 SWIGINTERN int
7158 _wrap_a_segment_dist__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7159  a_segment *arg1 = (a_segment *) 0 ;
7160  a_segment *arg2 = 0 ;
7161  void *argp1 = 0 ;
7162  int res1 = 0 ;
7163  void *argp2 ;
7164  int res2 = 0 ;
7165  double result;
7166 
7167  if (SWIG_GetArgs(interp, objc, objv,"oo:a_segment_dist self s ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
7168  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, 0 | 0 );
7169  if (!SWIG_IsOK(res1)) {
7170  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_segment_dist" "', argument " "1"" of type '" "a_segment const *""'");
7171  }
7172  arg1 = reinterpret_cast< a_segment * >(argp1);
7173  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_segment, 0 );
7174  if (!SWIG_IsOK(res2)) {
7175  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_segment_dist" "', argument " "2"" of type '" "a_segment const &""'");
7176  }
7177  if (!argp2) {
7178  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_segment_dist" "', argument " "2"" of type '" "a_segment const &""'");
7179  }
7180  arg2 = reinterpret_cast< a_segment * >(argp2);
7181  try {
7182  result = (double)((a_segment const *)arg1)->dist((a_segment const &)*arg2);
7183  } catch(a_segment::denomin_error &_e) {
7185  }
7186  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
7187  return TCL_OK;
7188 fail:
7189  return TCL_ERROR;
7190 }
7191 
7192 
7193 SWIGINTERN int
7194 _wrap_a_segment_dist(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7195  Tcl_Obj *CONST *argv = objv+1;
7196  int argc = objc-1;
7197  if (argc == 2) {
7198  int _v;
7199  void *vptr = 0;
7200  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_segment, 0);
7201  _v = SWIG_CheckState(res);
7202  if (_v) {
7203  void *vptr = 0;
7204  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
7205  _v = SWIG_CheckState(res);
7206  if (_v) {
7207  return _wrap_a_segment_dist__SWIG_0(clientData, interp, objc, argv - 1);
7208  }
7209  }
7210  }
7211  if (argc == 2) {
7212  int _v;
7213  void *vptr = 0;
7214  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_segment, 0);
7215  _v = SWIG_CheckState(res);
7216  if (_v) {
7217  void *vptr = 0;
7218  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_segment, SWIG_POINTER_NO_NULL);
7219  _v = SWIG_CheckState(res);
7220  if (_v) {
7221  return _wrap_a_segment_dist__SWIG_1(clientData, interp, objc, argv - 1);
7222  }
7223  }
7224  }
7225 
7226  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_segment_dist'.\n"
7227  " Possible C/C++ prototypes are:\n"
7228  " a_segment::dist(a_point const &) const\n"
7229  " a_segment::dist(a_segment const &) const\n", TCL_STATIC);
7230  return TCL_ERROR;
7231 }
7232 
7233 
7234 SWIGINTERN int
7235 _wrap_delete_a_segment(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7236  a_segment *arg1 = (a_segment *) 0 ;
7237  void *argp1 = 0 ;
7238  int res1 = 0 ;
7239 
7240  if (SWIG_GetArgs(interp, objc, objv,"o:delete_a_segment self ",(void *)0) == TCL_ERROR) SWIG_fail;
7241  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_segment, SWIG_POINTER_DISOWN | 0 );
7242  if (!SWIG_IsOK(res1)) {
7243  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_a_segment" "', argument " "1"" of type '" "a_segment *""'");
7244  }
7245  arg1 = reinterpret_cast< a_segment * >(argp1);
7246  delete arg1;
7247 
7248  return TCL_OK;
7249 fail:
7250  return TCL_ERROR;
7251 }
7252 
7253 
7255 a_segment *arg1 = (a_segment *) obj;
7256 delete arg1;
7257 }
7259  {"vec", _wrap_a_segment_vec},
7260  {"dir", _wrap_a_segment_dir},
7261  {"c", _wrap_a_segment_c},
7262  {"p1", _wrap_a_segment_p1},
7263  {"p2", _wrap_a_segment_p2},
7264  {"translate", _wrap_a_segment_translate},
7265  {"rotate", _wrap_a_segment_rotate},
7266  {"equals", _wrap_a_segment_equals},
7267  {"=", _wrap_a_segment_e___},
7268  {"length", _wrap_a_segment_length},
7269  {"project", _wrap_a_segment_project},
7270  {"closestl", _wrap_a_segment_closestl},
7271  {"closest", _wrap_a_segment_closest},
7272  {"intersect", _wrap_a_segment_intersect},
7273  {"shortest", _wrap_a_segment_shortest},
7274  {"distl", _wrap_a_segment_distl},
7275  {"dist", _wrap_a_segment_dist},
7276  {0,0}
7277 };
7279  {0,0,0}
7280 };
7282 static const char * swig_a_segment_base_names[] = {"a_geom_base *",0};
7284 SWIGINTERN int
7285 _wrap_new_a_plane(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7286  a_point *arg1 = 0 ;
7287  a_point *arg2 = 0 ;
7288  a_point *arg3 = 0 ;
7289  void *argp1 ;
7290  int res1 = 0 ;
7291  void *argp2 ;
7292  int res2 = 0 ;
7293  void *argp3 ;
7294  int res3 = 0 ;
7295  a_plane *result = 0 ;
7296 
7297  if (SWIG_GetArgs(interp, objc, objv,"ooo:new_a_plane p1 p2 p3 ",(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
7298  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point, 0 );
7299  if (!SWIG_IsOK(res1)) {
7300  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_a_plane" "', argument " "1"" of type '" "a_point const &""'");
7301  }
7302  if (!argp1) {
7303  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_plane" "', argument " "1"" of type '" "a_point const &""'");
7304  }
7305  arg1 = reinterpret_cast< a_point * >(argp1);
7306  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
7307  if (!SWIG_IsOK(res2)) {
7308  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_a_plane" "', argument " "2"" of type '" "a_point const &""'");
7309  }
7310  if (!argp2) {
7311  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_plane" "', argument " "2"" of type '" "a_point const &""'");
7312  }
7313  arg2 = reinterpret_cast< a_point * >(argp2);
7314  res3 = SWIG_ConvertPtr(objv[3], &argp3, SWIGTYPE_p_a_point, 0 );
7315  if (!SWIG_IsOK(res3)) {
7316  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "new_a_plane" "', argument " "3"" of type '" "a_point const &""'");
7317  }
7318  if (!argp3) {
7319  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_plane" "', argument " "3"" of type '" "a_point const &""'");
7320  }
7321  arg3 = reinterpret_cast< a_point * >(argp3);
7322  try {
7323  result = (a_plane *)new a_plane((a_point const &)*arg1,(a_point const &)*arg2,(a_point const &)*arg3);
7324  } catch(a_segment::denomin_error &_e) {
7326  }
7327  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_plane,0));
7328  return TCL_OK;
7329 fail:
7330  return TCL_ERROR;
7331 }
7332 
7333 
7334 SWIGINTERN int
7335 _wrap_a_plane_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7336  std::string result;
7337 
7338  if (SWIG_GetArgs(interp, objc, objv,":a_plane_help ") == TCL_ERROR) SWIG_fail;
7339  try {
7340  result = a_plane::help();
7341  } catch(a_segment::denomin_error &_e) {
7343  }
7344  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
7345  return TCL_OK;
7346 fail:
7347  return TCL_ERROR;
7348 }
7349 
7350 
7351 SWIGINTERN int
7352 _wrap_a_plane_n(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7353  a_plane *arg1 = (a_plane *) 0 ;
7354  void *argp1 = 0 ;
7355  int res1 = 0 ;
7356  a_point result;
7357 
7358  if (SWIG_GetArgs(interp, objc, objv,"o:a_plane_n self ",(void *)0) == TCL_ERROR) SWIG_fail;
7359  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_plane, 0 | 0 );
7360  if (!SWIG_IsOK(res1)) {
7361  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_plane_n" "', argument " "1"" of type '" "a_plane const *""'");
7362  }
7363  arg1 = reinterpret_cast< a_plane * >(argp1);
7364  try {
7365  result = ((a_plane const *)arg1)->n();
7366  } catch(a_segment::denomin_error &_e) {
7368  }
7369  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
7370  return TCL_OK;
7371 fail:
7372  return TCL_ERROR;
7373 }
7374 
7375 
7376 SWIGINTERN int
7377 _wrap_a_plane_d0__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7378  a_plane *arg1 = (a_plane *) 0 ;
7379  void *argp1 = 0 ;
7380  int res1 = 0 ;
7381  double result;
7382 
7383  if (SWIG_GetArgs(interp, objc, objv,"o:a_plane_d0 self ",(void *)0) == TCL_ERROR) SWIG_fail;
7384  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_plane, 0 | 0 );
7385  if (!SWIG_IsOK(res1)) {
7386  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_plane_d0" "', argument " "1"" of type '" "a_plane const *""'");
7387  }
7388  arg1 = reinterpret_cast< a_plane * >(argp1);
7389  try {
7390  result = (double)((a_plane const *)arg1)->d0();
7391  } catch(a_segment::denomin_error &_e) {
7393  }
7394  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
7395  return TCL_OK;
7396 fail:
7397  return TCL_ERROR;
7398 }
7399 
7400 
7401 SWIGINTERN int
7402 _wrap_a_plane_d0__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7403  a_plane *arg1 = (a_plane *) 0 ;
7404  double arg2 ;
7405  void *argp1 = 0 ;
7406  int res1 = 0 ;
7407  double val2 ;
7408  int ecode2 = 0 ;
7409 
7410  if (SWIG_GetArgs(interp, objc, objv,"oo:a_plane_d0 self d ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
7411  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_plane, 0 | 0 );
7412  if (!SWIG_IsOK(res1)) {
7413  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_plane_d0" "', argument " "1"" of type '" "a_plane *""'");
7414  }
7415  arg1 = reinterpret_cast< a_plane * >(argp1);
7416  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
7417  if (!SWIG_IsOK(ecode2)) {
7418  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_plane_d0" "', argument " "2"" of type '" "double""'");
7419  }
7420  arg2 = static_cast< double >(val2);
7421  try {
7422  (arg1)->d0(arg2);
7423  } catch(a_segment::denomin_error &_e) {
7425  }
7426 
7427  return TCL_OK;
7428 fail:
7429  return TCL_ERROR;
7430 }
7431 
7432 
7433 SWIGINTERN int
7434 _wrap_a_plane_d0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7435  Tcl_Obj *CONST *argv = objv+1;
7436  int argc = objc-1;
7437  if (argc == 1) {
7438  int _v;
7439  void *vptr = 0;
7440  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_plane, 0);
7441  _v = SWIG_CheckState(res);
7442  if (_v) {
7443  return _wrap_a_plane_d0__SWIG_0(clientData, interp, objc, argv - 1);
7444  }
7445  }
7446  if (argc == 2) {
7447  int _v;
7448  void *vptr = 0;
7449  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_plane, 0);
7450  _v = SWIG_CheckState(res);
7451  if (_v) {
7452  {
7453  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
7454  _v = SWIG_CheckState(res);
7455  }
7456  if (_v) {
7457  return _wrap_a_plane_d0__SWIG_1(clientData, interp, objc, argv - 1);
7458  }
7459  }
7460  }
7461 
7462  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_plane_d0'.\n"
7463  " Possible C/C++ prototypes are:\n"
7464  " a_plane::d0() const\n"
7465  " a_plane::d0(double const)\n", TCL_STATIC);
7466  return TCL_ERROR;
7467 }
7468 
7469 
7470 SWIGINTERN int
7471 _wrap_a_plane_p0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7472  a_plane *arg1 = (a_plane *) 0 ;
7473  void *argp1 = 0 ;
7474  int res1 = 0 ;
7475  a_point result;
7476 
7477  if (SWIG_GetArgs(interp, objc, objv,"o:a_plane_p0 self ",(void *)0) == TCL_ERROR) SWIG_fail;
7478  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_plane, 0 | 0 );
7479  if (!SWIG_IsOK(res1)) {
7480  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_plane_p0" "', argument " "1"" of type '" "a_plane const *""'");
7481  }
7482  arg1 = reinterpret_cast< a_plane * >(argp1);
7483  try {
7484  result = ((a_plane const *)arg1)->p0();
7485  } catch(a_segment::denomin_error &_e) {
7487  }
7488  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
7489  return TCL_OK;
7490 fail:
7491  return TCL_ERROR;
7492 }
7493 
7494 
7495 SWIGINTERN int
7496 _wrap_a_plane_dist(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7497  a_plane *arg1 = (a_plane *) 0 ;
7498  a_point *arg2 = 0 ;
7499  void *argp1 = 0 ;
7500  int res1 = 0 ;
7501  void *argp2 ;
7502  int res2 = 0 ;
7503  double result;
7504 
7505  if (SWIG_GetArgs(interp, objc, objv,"oo:a_plane_dist self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
7506  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_plane, 0 | 0 );
7507  if (!SWIG_IsOK(res1)) {
7508  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_plane_dist" "', argument " "1"" of type '" "a_plane const *""'");
7509  }
7510  arg1 = reinterpret_cast< a_plane * >(argp1);
7511  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
7512  if (!SWIG_IsOK(res2)) {
7513  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_plane_dist" "', argument " "2"" of type '" "a_point const &""'");
7514  }
7515  if (!argp2) {
7516  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_plane_dist" "', argument " "2"" of type '" "a_point const &""'");
7517  }
7518  arg2 = reinterpret_cast< a_point * >(argp2);
7519  try {
7520  result = (double)((a_plane const *)arg1)->dist((a_point const &)*arg2);
7521  } catch(a_segment::denomin_error &_e) {
7523  }
7524  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
7525  return TCL_OK;
7526 fail:
7527  return TCL_ERROR;
7528 }
7529 
7530 
7531 SWIGINTERN int
7532 _wrap_a_plane_closest(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7533  a_plane *arg1 = (a_plane *) 0 ;
7534  a_point *arg2 = 0 ;
7535  void *argp1 = 0 ;
7536  int res1 = 0 ;
7537  void *argp2 ;
7538  int res2 = 0 ;
7539  a_point result;
7540 
7541  if (SWIG_GetArgs(interp, objc, objv,"oo:a_plane_closest self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
7542  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_plane, 0 | 0 );
7543  if (!SWIG_IsOK(res1)) {
7544  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_plane_closest" "', argument " "1"" of type '" "a_plane const *""'");
7545  }
7546  arg1 = reinterpret_cast< a_plane * >(argp1);
7547  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
7548  if (!SWIG_IsOK(res2)) {
7549  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_plane_closest" "', argument " "2"" of type '" "a_point const &""'");
7550  }
7551  if (!argp2) {
7552  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_plane_closest" "', argument " "2"" of type '" "a_point const &""'");
7553  }
7554  arg2 = reinterpret_cast< a_point * >(argp2);
7555  try {
7556  result = ((a_plane const *)arg1)->closest((a_point const &)*arg2);
7557  } catch(a_segment::denomin_error &_e) {
7559  }
7560  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
7561  return TCL_OK;
7562 fail:
7563  return TCL_ERROR;
7564 }
7565 
7566 
7567 SWIGINTERN int
7568 _wrap_a_plane_intersect__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7569  a_plane *arg1 = (a_plane *) 0 ;
7570  a_segment *arg2 = 0 ;
7571  void *argp1 = 0 ;
7572  int res1 = 0 ;
7573  void *argp2 ;
7574  int res2 = 0 ;
7575  a_point result;
7576 
7577  if (SWIG_GetArgs(interp, objc, objv,"oo:a_plane_intersect self s ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
7578  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_plane, 0 | 0 );
7579  if (!SWIG_IsOK(res1)) {
7580  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_plane_intersect" "', argument " "1"" of type '" "a_plane const *""'");
7581  }
7582  arg1 = reinterpret_cast< a_plane * >(argp1);
7583  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_segment, 0 );
7584  if (!SWIG_IsOK(res2)) {
7585  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_plane_intersect" "', argument " "2"" of type '" "a_segment const &""'");
7586  }
7587  if (!argp2) {
7588  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_plane_intersect" "', argument " "2"" of type '" "a_segment const &""'");
7589  }
7590  arg2 = reinterpret_cast< a_segment * >(argp2);
7591  try {
7592  result = ((a_plane const *)arg1)->intersect((a_segment const &)*arg2);
7593  } catch(a_segment::denomin_error &_e) {
7595  }
7596  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
7597  return TCL_OK;
7598 fail:
7599  return TCL_ERROR;
7600 }
7601 
7602 
7603 SWIGINTERN int
7604 _wrap_a_plane_intersect__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7605  a_plane *arg1 = (a_plane *) 0 ;
7606  a_plane *arg2 = 0 ;
7607  void *argp1 = 0 ;
7608  int res1 = 0 ;
7609  void *argp2 ;
7610  int res2 = 0 ;
7611  a_segment result;
7612 
7613  if (SWIG_GetArgs(interp, objc, objv,"oo:a_plane_intersect self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
7614  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_plane, 0 | 0 );
7615  if (!SWIG_IsOK(res1)) {
7616  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_plane_intersect" "', argument " "1"" of type '" "a_plane const *""'");
7617  }
7618  arg1 = reinterpret_cast< a_plane * >(argp1);
7619  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_plane, 0 );
7620  if (!SWIG_IsOK(res2)) {
7621  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_plane_intersect" "', argument " "2"" of type '" "a_plane const &""'");
7622  }
7623  if (!argp2) {
7624  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_plane_intersect" "', argument " "2"" of type '" "a_plane const &""'");
7625  }
7626  arg2 = reinterpret_cast< a_plane * >(argp2);
7627  try {
7628  result = ((a_plane const *)arg1)->intersect((a_plane const &)*arg2);
7629  } catch(a_segment::denomin_error &_e) {
7631  }
7632  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_segment(static_cast< const a_segment& >(result))), SWIGTYPE_p_a_segment, SWIG_POINTER_OWN | 0 ));
7633  return TCL_OK;
7634 fail:
7635  return TCL_ERROR;
7636 }
7637 
7638 
7639 SWIGINTERN int
7640 _wrap_a_plane_intersect(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7641  Tcl_Obj *CONST *argv = objv+1;
7642  int argc = objc-1;
7643  if (argc == 2) {
7644  int _v;
7645  void *vptr = 0;
7646  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_plane, 0);
7647  _v = SWIG_CheckState(res);
7648  if (_v) {
7649  void *vptr = 0;
7650  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_segment, SWIG_POINTER_NO_NULL);
7651  _v = SWIG_CheckState(res);
7652  if (_v) {
7653  return _wrap_a_plane_intersect__SWIG_0(clientData, interp, objc, argv - 1);
7654  }
7655  }
7656  }
7657  if (argc == 2) {
7658  int _v;
7659  void *vptr = 0;
7660  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_plane, 0);
7661  _v = SWIG_CheckState(res);
7662  if (_v) {
7663  void *vptr = 0;
7664  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_plane, SWIG_POINTER_NO_NULL);
7665  _v = SWIG_CheckState(res);
7666  if (_v) {
7667  return _wrap_a_plane_intersect__SWIG_1(clientData, interp, objc, argv - 1);
7668  }
7669  }
7670  }
7671 
7672  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_plane_intersect'.\n"
7673  " Possible C/C++ prototypes are:\n"
7674  " a_plane::intersect(a_segment const &) const\n"
7675  " a_plane::intersect(a_plane const &) const\n", TCL_STATIC);
7676  return TCL_ERROR;
7677 }
7678 
7679 
7680 SWIGINTERN int
7681 _wrap_a_plane_contains(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7682  a_plane *arg1 = (a_plane *) 0 ;
7683  a_point *arg2 = 0 ;
7684  void *argp1 = 0 ;
7685  int res1 = 0 ;
7686  void *argp2 ;
7687  int res2 = 0 ;
7688  bool result;
7689 
7690  if (SWIG_GetArgs(interp, objc, objv,"oo:a_plane_contains self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
7691  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_plane, 0 | 0 );
7692  if (!SWIG_IsOK(res1)) {
7693  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_plane_contains" "', argument " "1"" of type '" "a_plane const *""'");
7694  }
7695  arg1 = reinterpret_cast< a_plane * >(argp1);
7696  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
7697  if (!SWIG_IsOK(res2)) {
7698  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_plane_contains" "', argument " "2"" of type '" "a_point const &""'");
7699  }
7700  if (!argp2) {
7701  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_plane_contains" "', argument " "2"" of type '" "a_point const &""'");
7702  }
7703  arg2 = reinterpret_cast< a_point * >(argp2);
7704  try {
7705  result = (bool)((a_plane const *)arg1)->contains((a_point const &)*arg2);
7706  } catch(a_segment::denomin_error &_e) {
7708  }
7709  Tcl_SetObjResult(interp,SWIG_From_bool(static_cast< bool >(result)));
7710  return TCL_OK;
7711 fail:
7712  return TCL_ERROR;
7713 }
7714 
7715 
7716 SWIGINTERN int
7717 _wrap_a_plane_move(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7718  a_plane *arg1 = (a_plane *) 0 ;
7719  a_coord arg2 ;
7720  void *argp1 = 0 ;
7721  int res1 = 0 ;
7722  void *argp2 ;
7723  int res2 = 0 ;
7724 
7725  if (SWIG_GetArgs(interp, objc, objv,"oo:a_plane_move self c ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
7726  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_plane, 0 | 0 );
7727  if (!SWIG_IsOK(res1)) {
7728  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_plane_move" "', argument " "1"" of type '" "a_plane *""'");
7729  }
7730  arg1 = reinterpret_cast< a_plane * >(argp1);
7731  {
7732  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_coord, 0 );
7733  if (!SWIG_IsOK(res2)) {
7734  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_plane_move" "', argument " "2"" of type '" "a_coord""'");
7735  }
7736  if (!argp2) {
7737  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_plane_move" "', argument " "2"" of type '" "a_coord""'");
7738  } else {
7739  arg2 = *(reinterpret_cast< a_coord * >(argp2));
7740  }
7741  }
7742  try {
7743  (arg1)->move(arg2);
7744  } catch(a_segment::denomin_error &_e) {
7746  }
7747 
7748  return TCL_OK;
7749 fail:
7750  return TCL_ERROR;
7751 }
7752 
7753 
7754 SWIGINTERN int
7755 _wrap_a_plane_print(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7756  a_plane *arg1 = (a_plane *) 0 ;
7757  void *argp1 = 0 ;
7758  int res1 = 0 ;
7759  std::string result;
7760 
7761  if (SWIG_GetArgs(interp, objc, objv,"o:a_plane_print self ",(void *)0) == TCL_ERROR) SWIG_fail;
7762  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_plane, 0 | 0 );
7763  if (!SWIG_IsOK(res1)) {
7764  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_plane_print" "', argument " "1"" of type '" "a_plane *""'");
7765  }
7766  arg1 = reinterpret_cast< a_plane * >(argp1);
7767  try {
7768  result = a_plane_print(arg1);
7769  } catch(a_segment::denomin_error &_e) {
7771  }
7772  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
7773  return TCL_OK;
7774 fail:
7775  return TCL_ERROR;
7776 }
7777 
7778 
7779 SWIGINTERN int
7780 _wrap_delete_a_plane(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7781  a_plane *arg1 = (a_plane *) 0 ;
7782  void *argp1 = 0 ;
7783  int res1 = 0 ;
7784 
7785  if (SWIG_GetArgs(interp, objc, objv,"o:delete_a_plane self ",(void *)0) == TCL_ERROR) SWIG_fail;
7786  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_plane, SWIG_POINTER_DISOWN | 0 );
7787  if (!SWIG_IsOK(res1)) {
7788  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_a_plane" "', argument " "1"" of type '" "a_plane *""'");
7789  }
7790  arg1 = reinterpret_cast< a_plane * >(argp1);
7791  delete arg1;
7792 
7793  return TCL_OK;
7794 fail:
7795  return TCL_ERROR;
7796 }
7797 
7798 
7800 a_plane *arg1 = (a_plane *) obj;
7801 delete arg1;
7802 }
7804  {"n", _wrap_a_plane_n},
7805  {"d0", _wrap_a_plane_d0},
7806  {"p0", _wrap_a_plane_p0},
7807  {"dist", _wrap_a_plane_dist},
7808  {"closest", _wrap_a_plane_closest},
7809  {"intersect", _wrap_a_plane_intersect},
7810  {"contains", _wrap_a_plane_contains},
7811  {"move", _wrap_a_plane_move},
7812  {"print", _wrap_a_plane_print},
7813  {0,0}
7814 };
7816  {0,0,0}
7817 };
7818 static swig_class *swig_a_plane_bases[] = {0,0};
7819 static const char * swig_a_plane_base_names[] = {"a_3dh *",0};
7821 SWIGINTERN int
7822 _wrap_new_a_tetrahedron__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7823  a_point *arg1 = 0 ;
7824  a_point *arg2 = 0 ;
7825  a_point *arg3 = 0 ;
7826  a_point *arg4 = 0 ;
7827  void *argp1 ;
7828  int res1 = 0 ;
7829  void *argp2 ;
7830  int res2 = 0 ;
7831  void *argp3 ;
7832  int res3 = 0 ;
7833  void *argp4 ;
7834  int res4 = 0 ;
7835  a_tetrahedron *result = 0 ;
7836 
7837  if (SWIG_GetArgs(interp, objc, objv,"oooo:new_a_tetrahedron p1 p2 p3 p4 ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
7838  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point, 0 );
7839  if (!SWIG_IsOK(res1)) {
7840  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_a_tetrahedron" "', argument " "1"" of type '" "a_point const &""'");
7841  }
7842  if (!argp1) {
7843  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_tetrahedron" "', argument " "1"" of type '" "a_point const &""'");
7844  }
7845  arg1 = reinterpret_cast< a_point * >(argp1);
7846  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
7847  if (!SWIG_IsOK(res2)) {
7848  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_a_tetrahedron" "', argument " "2"" of type '" "a_point const &""'");
7849  }
7850  if (!argp2) {
7851  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_tetrahedron" "', argument " "2"" of type '" "a_point const &""'");
7852  }
7853  arg2 = reinterpret_cast< a_point * >(argp2);
7854  res3 = SWIG_ConvertPtr(objv[3], &argp3, SWIGTYPE_p_a_point, 0 );
7855  if (!SWIG_IsOK(res3)) {
7856  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "new_a_tetrahedron" "', argument " "3"" of type '" "a_point const &""'");
7857  }
7858  if (!argp3) {
7859  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_tetrahedron" "', argument " "3"" of type '" "a_point const &""'");
7860  }
7861  arg3 = reinterpret_cast< a_point * >(argp3);
7862  res4 = SWIG_ConvertPtr(objv[4], &argp4, SWIGTYPE_p_a_point, 0 );
7863  if (!SWIG_IsOK(res4)) {
7864  SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "new_a_tetrahedron" "', argument " "4"" of type '" "a_point const &""'");
7865  }
7866  if (!argp4) {
7867  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_tetrahedron" "', argument " "4"" of type '" "a_point const &""'");
7868  }
7869  arg4 = reinterpret_cast< a_point * >(argp4);
7870  try {
7871  result = (a_tetrahedron *)new a_tetrahedron((a_point const &)*arg1,(a_point const &)*arg2,(a_point const &)*arg3,(a_point const &)*arg4);
7872  } catch(a_segment::denomin_error &_e) {
7874  }
7875  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_tetrahedron,0));
7876  return TCL_OK;
7877 fail:
7878  return TCL_ERROR;
7879 }
7880 
7881 
7882 SWIGINTERN int
7883 _wrap_new_a_tetrahedron__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7884  a_tetrahedron *arg1 = 0 ;
7885  void *argp1 ;
7886  int res1 = 0 ;
7887  a_tetrahedron *result = 0 ;
7888 
7889  if (SWIG_GetArgs(interp, objc, objv,"o:new_a_tetrahedron p ",(void *)0) == TCL_ERROR) SWIG_fail;
7890  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_tetrahedron, 0 );
7891  if (!SWIG_IsOK(res1)) {
7892  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_a_tetrahedron" "', argument " "1"" of type '" "a_tetrahedron const &""'");
7893  }
7894  if (!argp1) {
7895  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_tetrahedron" "', argument " "1"" of type '" "a_tetrahedron const &""'");
7896  }
7897  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
7898  try {
7899  result = (a_tetrahedron *)new a_tetrahedron((a_tetrahedron const &)*arg1);
7900  } catch(a_segment::denomin_error &_e) {
7902  }
7903  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_tetrahedron,0));
7904  return TCL_OK;
7905 fail:
7906  return TCL_ERROR;
7907 }
7908 
7909 
7910 SWIGINTERN int
7911 _wrap_new_a_tetrahedron(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7912  Tcl_Obj *CONST *argv = objv+1;
7913  int argc = objc-1;
7914  if (argc == 1) {
7915  int _v;
7916  void *vptr = 0;
7918  _v = SWIG_CheckState(res);
7919  if (_v) {
7920  return _wrap_new_a_tetrahedron__SWIG_1(clientData, interp, objc, argv - 1);
7921  }
7922  }
7923  if (argc == 4) {
7924  int _v;
7925  void *vptr = 0;
7926  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
7927  _v = SWIG_CheckState(res);
7928  if (_v) {
7929  void *vptr = 0;
7930  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
7931  _v = SWIG_CheckState(res);
7932  if (_v) {
7933  void *vptr = 0;
7934  int res = SWIG_ConvertPtr(argv[2], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
7935  _v = SWIG_CheckState(res);
7936  if (_v) {
7937  void *vptr = 0;
7938  int res = SWIG_ConvertPtr(argv[3], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
7939  _v = SWIG_CheckState(res);
7940  if (_v) {
7941  return _wrap_new_a_tetrahedron__SWIG_0(clientData, interp, objc, argv - 1);
7942  }
7943  }
7944  }
7945  }
7946  }
7947 
7948  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'new_a_tetrahedron'.\n"
7949  " Possible C/C++ prototypes are:\n"
7950  " a_tetrahedron::a_tetrahedron(a_point const &,a_point const &,a_point const &,a_point const &)\n"
7951  " a_tetrahedron::a_tetrahedron(a_tetrahedron const &)\n", TCL_STATIC);
7952  return TCL_ERROR;
7953 }
7954 
7955 
7956 SWIGINTERN int
7957 _wrap_a_tetrahedron_classname(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7958  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
7959  void *argp1 = 0 ;
7960  int res1 = 0 ;
7961  std::string result;
7962 
7963  if (SWIG_GetArgs(interp, objc, objv,"o:a_tetrahedron_classname self ",(void *)0) == TCL_ERROR) SWIG_fail;
7964  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
7965  if (!SWIG_IsOK(res1)) {
7966  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_classname" "', argument " "1"" of type '" "a_tetrahedron *""'");
7967  }
7968  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
7969  try {
7970  result = (arg1)->classname();
7971  } catch(a_segment::denomin_error &_e) {
7973  }
7974  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
7975  return TCL_OK;
7976 fail:
7977  return TCL_ERROR;
7978 }
7979 
7980 
7981 SWIGINTERN int
7982 _wrap_a_tetrahedron_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
7983  std::string result;
7984 
7985  if (SWIG_GetArgs(interp, objc, objv,":a_tetrahedron_help ") == TCL_ERROR) SWIG_fail;
7986  try {
7987  result = a_tetrahedron::help();
7988  } catch(a_segment::denomin_error &_e) {
7990  }
7991  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
7992  return TCL_OK;
7993 fail:
7994  return TCL_ERROR;
7995 }
7996 
7997 
7998 SWIGINTERN int
7999 _wrap_a_tetrahedron_p1__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8000  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8001  void *argp1 = 0 ;
8002  int res1 = 0 ;
8003  a_point result;
8004 
8005  if (SWIG_GetArgs(interp, objc, objv,"o:a_tetrahedron_p1 self ",(void *)0) == TCL_ERROR) SWIG_fail;
8006  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8007  if (!SWIG_IsOK(res1)) {
8008  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_p1" "', argument " "1"" of type '" "a_tetrahedron const *""'");
8009  }
8010  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8011  try {
8012  result = ((a_tetrahedron const *)arg1)->p1();
8013  } catch(a_segment::denomin_error &_e) {
8015  }
8016  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
8017  return TCL_OK;
8018 fail:
8019  return TCL_ERROR;
8020 }
8021 
8022 
8023 SWIGINTERN int
8024 _wrap_a_tetrahedron_p2__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8025  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8026  void *argp1 = 0 ;
8027  int res1 = 0 ;
8028  a_point result;
8029 
8030  if (SWIG_GetArgs(interp, objc, objv,"o:a_tetrahedron_p2 self ",(void *)0) == TCL_ERROR) SWIG_fail;
8031  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8032  if (!SWIG_IsOK(res1)) {
8033  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_p2" "', argument " "1"" of type '" "a_tetrahedron const *""'");
8034  }
8035  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8036  try {
8037  result = ((a_tetrahedron const *)arg1)->p2();
8038  } catch(a_segment::denomin_error &_e) {
8040  }
8041  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
8042  return TCL_OK;
8043 fail:
8044  return TCL_ERROR;
8045 }
8046 
8047 
8048 SWIGINTERN int
8049 _wrap_a_tetrahedron_p3__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8050  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8051  void *argp1 = 0 ;
8052  int res1 = 0 ;
8053  a_point result;
8054 
8055  if (SWIG_GetArgs(interp, objc, objv,"o:a_tetrahedron_p3 self ",(void *)0) == TCL_ERROR) SWIG_fail;
8056  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8057  if (!SWIG_IsOK(res1)) {
8058  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_p3" "', argument " "1"" of type '" "a_tetrahedron const *""'");
8059  }
8060  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8061  try {
8062  result = ((a_tetrahedron const *)arg1)->p3();
8063  } catch(a_segment::denomin_error &_e) {
8065  }
8066  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
8067  return TCL_OK;
8068 fail:
8069  return TCL_ERROR;
8070 }
8071 
8072 
8073 SWIGINTERN int
8074 _wrap_a_tetrahedron_p4__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8075  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8076  void *argp1 = 0 ;
8077  int res1 = 0 ;
8078  a_point result;
8079 
8080  if (SWIG_GetArgs(interp, objc, objv,"o:a_tetrahedron_p4 self ",(void *)0) == TCL_ERROR) SWIG_fail;
8081  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8082  if (!SWIG_IsOK(res1)) {
8083  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_p4" "', argument " "1"" of type '" "a_tetrahedron const *""'");
8084  }
8085  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8086  try {
8087  result = ((a_tetrahedron const *)arg1)->p4();
8088  } catch(a_segment::denomin_error &_e) {
8090  }
8091  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
8092  return TCL_OK;
8093 fail:
8094  return TCL_ERROR;
8095 }
8096 
8097 
8098 SWIGINTERN int
8099 _wrap_a_tetrahedron_p(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8100  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8101  int arg2 ;
8102  void *argp1 = 0 ;
8103  int res1 = 0 ;
8104  int val2 ;
8105  int ecode2 = 0 ;
8106  a_point result;
8107 
8108  if (SWIG_GetArgs(interp, objc, objv,"oo:a_tetrahedron_p self ref ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
8109  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8110  if (!SWIG_IsOK(res1)) {
8111  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_p" "', argument " "1"" of type '" "a_tetrahedron const *""'");
8112  }
8113  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8114  ecode2 = SWIG_AsVal_int SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
8115  if (!SWIG_IsOK(ecode2)) {
8116  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_tetrahedron_p" "', argument " "2"" of type '" "int""'");
8117  }
8118  arg2 = static_cast< int >(val2);
8119  try {
8120  result = ((a_tetrahedron const *)arg1)->p(arg2);
8121  } catch(a_segment::denomin_error &_e) {
8123  }
8124  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
8125  return TCL_OK;
8126 fail:
8127  return TCL_ERROR;
8128 }
8129 
8130 
8131 SWIGINTERN int
8132 _wrap_a_tetrahedron_p1__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8133  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8134  a_point *arg2 = 0 ;
8135  void *argp1 = 0 ;
8136  int res1 = 0 ;
8137  void *argp2 ;
8138  int res2 = 0 ;
8139 
8140  if (SWIG_GetArgs(interp, objc, objv,"oo:a_tetrahedron_p1 self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
8141  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8142  if (!SWIG_IsOK(res1)) {
8143  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_p1" "', argument " "1"" of type '" "a_tetrahedron *""'");
8144  }
8145  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8146  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
8147  if (!SWIG_IsOK(res2)) {
8148  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_tetrahedron_p1" "', argument " "2"" of type '" "a_point const &""'");
8149  }
8150  if (!argp2) {
8151  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_p1" "', argument " "2"" of type '" "a_point const &""'");
8152  }
8153  arg2 = reinterpret_cast< a_point * >(argp2);
8154  try {
8155  (arg1)->p1((a_point const &)*arg2);
8156  } catch(a_segment::denomin_error &_e) {
8158  }
8159 
8160  return TCL_OK;
8161 fail:
8162  return TCL_ERROR;
8163 }
8164 
8165 
8166 SWIGINTERN int
8167 _wrap_a_tetrahedron_p1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8168  Tcl_Obj *CONST *argv = objv+1;
8169  int argc = objc-1;
8170  if (argc == 1) {
8171  int _v;
8172  void *vptr = 0;
8173  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_tetrahedron, 0);
8174  _v = SWIG_CheckState(res);
8175  if (_v) {
8176  return _wrap_a_tetrahedron_p1__SWIG_0(clientData, interp, objc, argv - 1);
8177  }
8178  }
8179  if (argc == 2) {
8180  int _v;
8181  void *vptr = 0;
8182  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_tetrahedron, 0);
8183  _v = SWIG_CheckState(res);
8184  if (_v) {
8185  void *vptr = 0;
8186  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
8187  _v = SWIG_CheckState(res);
8188  if (_v) {
8189  return _wrap_a_tetrahedron_p1__SWIG_1(clientData, interp, objc, argv - 1);
8190  }
8191  }
8192  }
8193 
8194  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_tetrahedron_p1'.\n"
8195  " Possible C/C++ prototypes are:\n"
8196  " a_tetrahedron::p1() const\n"
8197  " a_tetrahedron::p1(a_point const &)\n", TCL_STATIC);
8198  return TCL_ERROR;
8199 }
8200 
8201 
8202 SWIGINTERN int
8203 _wrap_a_tetrahedron_p2__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8204  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8205  a_point *arg2 = 0 ;
8206  void *argp1 = 0 ;
8207  int res1 = 0 ;
8208  void *argp2 ;
8209  int res2 = 0 ;
8210 
8211  if (SWIG_GetArgs(interp, objc, objv,"oo:a_tetrahedron_p2 self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
8212  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8213  if (!SWIG_IsOK(res1)) {
8214  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_p2" "', argument " "1"" of type '" "a_tetrahedron *""'");
8215  }
8216  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8217  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
8218  if (!SWIG_IsOK(res2)) {
8219  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_tetrahedron_p2" "', argument " "2"" of type '" "a_point const &""'");
8220  }
8221  if (!argp2) {
8222  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_p2" "', argument " "2"" of type '" "a_point const &""'");
8223  }
8224  arg2 = reinterpret_cast< a_point * >(argp2);
8225  try {
8226  (arg1)->p2((a_point const &)*arg2);
8227  } catch(a_segment::denomin_error &_e) {
8229  }
8230 
8231  return TCL_OK;
8232 fail:
8233  return TCL_ERROR;
8234 }
8235 
8236 
8237 SWIGINTERN int
8238 _wrap_a_tetrahedron_p2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8239  Tcl_Obj *CONST *argv = objv+1;
8240  int argc = objc-1;
8241  if (argc == 1) {
8242  int _v;
8243  void *vptr = 0;
8244  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_tetrahedron, 0);
8245  _v = SWIG_CheckState(res);
8246  if (_v) {
8247  return _wrap_a_tetrahedron_p2__SWIG_0(clientData, interp, objc, argv - 1);
8248  }
8249  }
8250  if (argc == 2) {
8251  int _v;
8252  void *vptr = 0;
8253  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_tetrahedron, 0);
8254  _v = SWIG_CheckState(res);
8255  if (_v) {
8256  void *vptr = 0;
8257  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
8258  _v = SWIG_CheckState(res);
8259  if (_v) {
8260  return _wrap_a_tetrahedron_p2__SWIG_1(clientData, interp, objc, argv - 1);
8261  }
8262  }
8263  }
8264 
8265  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_tetrahedron_p2'.\n"
8266  " Possible C/C++ prototypes are:\n"
8267  " a_tetrahedron::p2() const\n"
8268  " a_tetrahedron::p2(a_point const &)\n", TCL_STATIC);
8269  return TCL_ERROR;
8270 }
8271 
8272 
8273 SWIGINTERN int
8274 _wrap_a_tetrahedron_p3__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8275  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8276  a_point *arg2 = 0 ;
8277  void *argp1 = 0 ;
8278  int res1 = 0 ;
8279  void *argp2 ;
8280  int res2 = 0 ;
8281 
8282  if (SWIG_GetArgs(interp, objc, objv,"oo:a_tetrahedron_p3 self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
8283  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8284  if (!SWIG_IsOK(res1)) {
8285  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_p3" "', argument " "1"" of type '" "a_tetrahedron *""'");
8286  }
8287  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8288  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
8289  if (!SWIG_IsOK(res2)) {
8290  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_tetrahedron_p3" "', argument " "2"" of type '" "a_point const &""'");
8291  }
8292  if (!argp2) {
8293  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_p3" "', argument " "2"" of type '" "a_point const &""'");
8294  }
8295  arg2 = reinterpret_cast< a_point * >(argp2);
8296  try {
8297  (arg1)->p3((a_point const &)*arg2);
8298  } catch(a_segment::denomin_error &_e) {
8300  }
8301 
8302  return TCL_OK;
8303 fail:
8304  return TCL_ERROR;
8305 }
8306 
8307 
8308 SWIGINTERN int
8309 _wrap_a_tetrahedron_p3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8310  Tcl_Obj *CONST *argv = objv+1;
8311  int argc = objc-1;
8312  if (argc == 1) {
8313  int _v;
8314  void *vptr = 0;
8315  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_tetrahedron, 0);
8316  _v = SWIG_CheckState(res);
8317  if (_v) {
8318  return _wrap_a_tetrahedron_p3__SWIG_0(clientData, interp, objc, argv - 1);
8319  }
8320  }
8321  if (argc == 2) {
8322  int _v;
8323  void *vptr = 0;
8324  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_tetrahedron, 0);
8325  _v = SWIG_CheckState(res);
8326  if (_v) {
8327  void *vptr = 0;
8328  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
8329  _v = SWIG_CheckState(res);
8330  if (_v) {
8331  return _wrap_a_tetrahedron_p3__SWIG_1(clientData, interp, objc, argv - 1);
8332  }
8333  }
8334  }
8335 
8336  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_tetrahedron_p3'.\n"
8337  " Possible C/C++ prototypes are:\n"
8338  " a_tetrahedron::p3() const\n"
8339  " a_tetrahedron::p3(a_point const &)\n", TCL_STATIC);
8340  return TCL_ERROR;
8341 }
8342 
8343 
8344 SWIGINTERN int
8345 _wrap_a_tetrahedron_p4__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8346  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8347  a_point *arg2 = 0 ;
8348  void *argp1 = 0 ;
8349  int res1 = 0 ;
8350  void *argp2 ;
8351  int res2 = 0 ;
8352 
8353  if (SWIG_GetArgs(interp, objc, objv,"oo:a_tetrahedron_p4 self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
8354  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8355  if (!SWIG_IsOK(res1)) {
8356  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_p4" "', argument " "1"" of type '" "a_tetrahedron *""'");
8357  }
8358  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8359  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
8360  if (!SWIG_IsOK(res2)) {
8361  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_tetrahedron_p4" "', argument " "2"" of type '" "a_point const &""'");
8362  }
8363  if (!argp2) {
8364  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_p4" "', argument " "2"" of type '" "a_point const &""'");
8365  }
8366  arg2 = reinterpret_cast< a_point * >(argp2);
8367  try {
8368  (arg1)->p4((a_point const &)*arg2);
8369  } catch(a_segment::denomin_error &_e) {
8371  }
8372 
8373  return TCL_OK;
8374 fail:
8375  return TCL_ERROR;
8376 }
8377 
8378 
8379 SWIGINTERN int
8380 _wrap_a_tetrahedron_p4(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8381  Tcl_Obj *CONST *argv = objv+1;
8382  int argc = objc-1;
8383  if (argc == 1) {
8384  int _v;
8385  void *vptr = 0;
8386  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_tetrahedron, 0);
8387  _v = SWIG_CheckState(res);
8388  if (_v) {
8389  return _wrap_a_tetrahedron_p4__SWIG_0(clientData, interp, objc, argv - 1);
8390  }
8391  }
8392  if (argc == 2) {
8393  int _v;
8394  void *vptr = 0;
8395  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_tetrahedron, 0);
8396  _v = SWIG_CheckState(res);
8397  if (_v) {
8398  void *vptr = 0;
8399  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
8400  _v = SWIG_CheckState(res);
8401  if (_v) {
8402  return _wrap_a_tetrahedron_p4__SWIG_1(clientData, interp, objc, argv - 1);
8403  }
8404  }
8405  }
8406 
8407  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_tetrahedron_p4'.\n"
8408  " Possible C/C++ prototypes are:\n"
8409  " a_tetrahedron::p4() const\n"
8410  " a_tetrahedron::p4(a_point const &)\n", TCL_STATIC);
8411  return TCL_ERROR;
8412 }
8413 
8414 
8415 SWIGINTERN int
8416 _wrap_a_tetrahedron_set(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8417  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8418  a_point *arg2 = 0 ;
8419  a_point *arg3 = 0 ;
8420  a_point *arg4 = 0 ;
8421  a_point *arg5 = 0 ;
8422  void *argp1 = 0 ;
8423  int res1 = 0 ;
8424  void *argp2 ;
8425  int res2 = 0 ;
8426  void *argp3 ;
8427  int res3 = 0 ;
8428  void *argp4 ;
8429  int res4 = 0 ;
8430  void *argp5 ;
8431  int res5 = 0 ;
8432 
8433  if (SWIG_GetArgs(interp, objc, objv,"ooooo:a_tetrahedron_set self p1 p2 p3 p4 ",(void *)0,(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
8434  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8435  if (!SWIG_IsOK(res1)) {
8436  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_set" "', argument " "1"" of type '" "a_tetrahedron *""'");
8437  }
8438  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8439  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
8440  if (!SWIG_IsOK(res2)) {
8441  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_tetrahedron_set" "', argument " "2"" of type '" "a_point const &""'");
8442  }
8443  if (!argp2) {
8444  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_set" "', argument " "2"" of type '" "a_point const &""'");
8445  }
8446  arg2 = reinterpret_cast< a_point * >(argp2);
8447  res3 = SWIG_ConvertPtr(objv[3], &argp3, SWIGTYPE_p_a_point, 0 );
8448  if (!SWIG_IsOK(res3)) {
8449  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "a_tetrahedron_set" "', argument " "3"" of type '" "a_point const &""'");
8450  }
8451  if (!argp3) {
8452  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_set" "', argument " "3"" of type '" "a_point const &""'");
8453  }
8454  arg3 = reinterpret_cast< a_point * >(argp3);
8455  res4 = SWIG_ConvertPtr(objv[4], &argp4, SWIGTYPE_p_a_point, 0 );
8456  if (!SWIG_IsOK(res4)) {
8457  SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "a_tetrahedron_set" "', argument " "4"" of type '" "a_point const &""'");
8458  }
8459  if (!argp4) {
8460  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_set" "', argument " "4"" of type '" "a_point const &""'");
8461  }
8462  arg4 = reinterpret_cast< a_point * >(argp4);
8463  res5 = SWIG_ConvertPtr(objv[5], &argp5, SWIGTYPE_p_a_point, 0 );
8464  if (!SWIG_IsOK(res5)) {
8465  SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "a_tetrahedron_set" "', argument " "5"" of type '" "a_point const &""'");
8466  }
8467  if (!argp5) {
8468  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_set" "', argument " "5"" of type '" "a_point const &""'");
8469  }
8470  arg5 = reinterpret_cast< a_point * >(argp5);
8471  try {
8472  (arg1)->set((a_point const &)*arg2,(a_point const &)*arg3,(a_point const &)*arg4,(a_point const &)*arg5);
8473  } catch(a_segment::denomin_error &_e) {
8475  }
8476 
8477  return TCL_OK;
8478 fail:
8479  return TCL_ERROR;
8480 }
8481 
8482 
8483 SWIGINTERN int
8484 _wrap_a_tetrahedron_s(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8485  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8486  int arg2 ;
8487  void *argp1 = 0 ;
8488  int res1 = 0 ;
8489  int val2 ;
8490  int ecode2 = 0 ;
8491  a_segment result;
8492 
8493  if (SWIG_GetArgs(interp, objc, objv,"oo:a_tetrahedron_s self ref ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
8494  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8495  if (!SWIG_IsOK(res1)) {
8496  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_s" "', argument " "1"" of type '" "a_tetrahedron const *""'");
8497  }
8498  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8499  ecode2 = SWIG_AsVal_int SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
8500  if (!SWIG_IsOK(ecode2)) {
8501  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_tetrahedron_s" "', argument " "2"" of type '" "int""'");
8502  }
8503  arg2 = static_cast< int >(val2);
8504  try {
8505  result = ((a_tetrahedron const *)arg1)->s(arg2);
8506  } catch(a_segment::denomin_error &_e) {
8508  }
8509  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_segment(static_cast< const a_segment& >(result))), SWIGTYPE_p_a_segment, SWIG_POINTER_OWN | 0 ));
8510  return TCL_OK;
8511 fail:
8512  return TCL_ERROR;
8513 }
8514 
8515 
8516 SWIGINTERN int
8517 _wrap_a_tetrahedron_f(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8518  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8519  int arg2 ;
8520  void *argp1 = 0 ;
8521  int res1 = 0 ;
8522  int val2 ;
8523  int ecode2 = 0 ;
8524  SwigValueWrapper< a_triangle > result;
8525 
8526  if (SWIG_GetArgs(interp, objc, objv,"oo:a_tetrahedron_f self ref ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
8527  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8528  if (!SWIG_IsOK(res1)) {
8529  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_f" "', argument " "1"" of type '" "a_tetrahedron const *""'");
8530  }
8531  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8532  ecode2 = SWIG_AsVal_int SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
8533  if (!SWIG_IsOK(ecode2)) {
8534  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_tetrahedron_f" "', argument " "2"" of type '" "int""'");
8535  }
8536  arg2 = static_cast< int >(val2);
8537  try {
8538  result = ((a_tetrahedron const *)arg1)->f(arg2);
8539  } catch(a_segment::denomin_error &_e) {
8541  }
8542  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_triangle(static_cast< const a_triangle& >(result))), SWIGTYPE_p_a_triangle, SWIG_POINTER_OWN | 0 ));
8543  return TCL_OK;
8544 fail:
8545  return TCL_ERROR;
8546 }
8547 
8548 
8549 SWIGINTERN int
8550 _wrap_a_tetrahedron_c(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8551  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8552  void *argp1 = 0 ;
8553  int res1 = 0 ;
8554  a_point result;
8555 
8556  if (SWIG_GetArgs(interp, objc, objv,"o:a_tetrahedron_c self ",(void *)0) == TCL_ERROR) SWIG_fail;
8557  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8558  if (!SWIG_IsOK(res1)) {
8559  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_c" "', argument " "1"" of type '" "a_tetrahedron const *""'");
8560  }
8561  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8562  try {
8563  result = ((a_tetrahedron const *)arg1)->c();
8564  } catch(a_segment::denomin_error &_e) {
8566  }
8567  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
8568  return TCL_OK;
8569 fail:
8570  return TCL_ERROR;
8571 }
8572 
8573 
8574 SWIGINTERN int
8575 _wrap_a_tetrahedron_translate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8576  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8577  double arg2 ;
8578  double arg3 ;
8579  double arg4 ;
8580  void *argp1 = 0 ;
8581  int res1 = 0 ;
8582  double val2 ;
8583  int ecode2 = 0 ;
8584  double val3 ;
8585  int ecode3 = 0 ;
8586  double val4 ;
8587  int ecode4 = 0 ;
8588  a_tetrahedron *result = 0 ;
8589 
8590  if (SWIG_GetArgs(interp, objc, objv,"oooo:a_tetrahedron_translate self x y z ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
8591  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8592  if (!SWIG_IsOK(res1)) {
8593  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_translate" "', argument " "1"" of type '" "a_tetrahedron *""'");
8594  }
8595  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8596  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
8597  if (!SWIG_IsOK(ecode2)) {
8598  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_tetrahedron_translate" "', argument " "2"" of type '" "double""'");
8599  }
8600  arg2 = static_cast< double >(val2);
8601  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
8602  if (!SWIG_IsOK(ecode3)) {
8603  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "a_tetrahedron_translate" "', argument " "3"" of type '" "double""'");
8604  }
8605  arg3 = static_cast< double >(val3);
8606  ecode4 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[4], &val4);
8607  if (!SWIG_IsOK(ecode4)) {
8608  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "a_tetrahedron_translate" "', argument " "4"" of type '" "double""'");
8609  }
8610  arg4 = static_cast< double >(val4);
8611  try {
8612  result = (a_tetrahedron *) &(arg1)->translate(arg2,arg3,arg4);
8613  } catch(a_segment::denomin_error &_e) {
8615  }
8616  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_tetrahedron,0));
8617  return TCL_OK;
8618 fail:
8619  return TCL_ERROR;
8620 }
8621 
8622 
8623 SWIGINTERN int
8624 _wrap_a_tetrahedron_rotate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8625  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8626  a_point *arg2 = 0 ;
8627  a_point *arg3 = 0 ;
8628  a_point *arg4 = 0 ;
8629  void *argp1 = 0 ;
8630  int res1 = 0 ;
8631  void *argp2 ;
8632  int res2 = 0 ;
8633  void *argp3 ;
8634  int res3 = 0 ;
8635  void *argp4 ;
8636  int res4 = 0 ;
8637  a_tetrahedron *result = 0 ;
8638 
8639  if (SWIG_GetArgs(interp, objc, objv,"oooo:a_tetrahedron_rotate self x_axis y_axis z_axis ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
8640  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8641  if (!SWIG_IsOK(res1)) {
8642  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_rotate" "', argument " "1"" of type '" "a_tetrahedron *""'");
8643  }
8644  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8645  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
8646  if (!SWIG_IsOK(res2)) {
8647  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_tetrahedron_rotate" "', argument " "2"" of type '" "a_point const &""'");
8648  }
8649  if (!argp2) {
8650  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_rotate" "', argument " "2"" of type '" "a_point const &""'");
8651  }
8652  arg2 = reinterpret_cast< a_point * >(argp2);
8653  res3 = SWIG_ConvertPtr(objv[3], &argp3, SWIGTYPE_p_a_point, 0 );
8654  if (!SWIG_IsOK(res3)) {
8655  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "a_tetrahedron_rotate" "', argument " "3"" of type '" "a_point const &""'");
8656  }
8657  if (!argp3) {
8658  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_rotate" "', argument " "3"" of type '" "a_point const &""'");
8659  }
8660  arg3 = reinterpret_cast< a_point * >(argp3);
8661  res4 = SWIG_ConvertPtr(objv[4], &argp4, SWIGTYPE_p_a_point, 0 );
8662  if (!SWIG_IsOK(res4)) {
8663  SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "a_tetrahedron_rotate" "', argument " "4"" of type '" "a_point const &""'");
8664  }
8665  if (!argp4) {
8666  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_rotate" "', argument " "4"" of type '" "a_point const &""'");
8667  }
8668  arg4 = reinterpret_cast< a_point * >(argp4);
8669  try {
8670  result = (a_tetrahedron *) &(arg1)->rotate((a_point const &)*arg2,(a_point const &)*arg3,(a_point const &)*arg4);
8671  } catch(a_segment::denomin_error &_e) {
8673  }
8674  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_tetrahedron,0));
8675  return TCL_OK;
8676 fail:
8677  return TCL_ERROR;
8678 }
8679 
8680 
8681 SWIGINTERN int
8682 _wrap_a_tetrahedron_V(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8683  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8684  void *argp1 = 0 ;
8685  int res1 = 0 ;
8686  double result;
8687 
8688  if (SWIG_GetArgs(interp, objc, objv,"o:a_tetrahedron_V self ",(void *)0) == TCL_ERROR) SWIG_fail;
8689  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8690  if (!SWIG_IsOK(res1)) {
8691  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_V" "', argument " "1"" of type '" "a_tetrahedron const *""'");
8692  }
8693  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8694  try {
8695  result = (double)((a_tetrahedron const *)arg1)->V();
8696  } catch(a_segment::denomin_error &_e) {
8698  }
8699  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
8700  return TCL_OK;
8701 fail:
8702  return TCL_ERROR;
8703 }
8704 
8705 
8706 SWIGINTERN int
8707 _wrap_a_tetrahedron_S(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8708  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8709  void *argp1 = 0 ;
8710  int res1 = 0 ;
8711  double result;
8712 
8713  if (SWIG_GetArgs(interp, objc, objv,"o:a_tetrahedron_S self ",(void *)0) == TCL_ERROR) SWIG_fail;
8714  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8715  if (!SWIG_IsOK(res1)) {
8716  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_S" "', argument " "1"" of type '" "a_tetrahedron const *""'");
8717  }
8718  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8719  try {
8720  result = (double)((a_tetrahedron const *)arg1)->S();
8721  } catch(a_segment::denomin_error &_e) {
8723  }
8724  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
8725  return TCL_OK;
8726 fail:
8727  return TCL_ERROR;
8728 }
8729 
8730 
8731 SWIGINTERN int
8732 _wrap_a_tetrahedron_contains(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8733  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8734  a_point *arg2 = 0 ;
8735  void *argp1 = 0 ;
8736  int res1 = 0 ;
8737  void *argp2 ;
8738  int res2 = 0 ;
8739  bool result;
8740 
8741  if (SWIG_GetArgs(interp, objc, objv,"oo:a_tetrahedron_contains self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
8742  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8743  if (!SWIG_IsOK(res1)) {
8744  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_contains" "', argument " "1"" of type '" "a_tetrahedron const *""'");
8745  }
8746  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8747  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
8748  if (!SWIG_IsOK(res2)) {
8749  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_tetrahedron_contains" "', argument " "2"" of type '" "a_point const &""'");
8750  }
8751  if (!argp2) {
8752  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_contains" "', argument " "2"" of type '" "a_point const &""'");
8753  }
8754  arg2 = reinterpret_cast< a_point * >(argp2);
8755  try {
8756  result = (bool)((a_tetrahedron const *)arg1)->contains((a_point const &)*arg2);
8757  } catch(a_segment::denomin_error &_e) {
8759  }
8760  Tcl_SetObjResult(interp,SWIG_From_bool(static_cast< bool >(result)));
8761  return TCL_OK;
8762 fail:
8763  return TCL_ERROR;
8764 }
8765 
8766 
8767 SWIGINTERN int
8768 _wrap_a_tetrahedron_quality(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8769  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8770  void *argp1 = 0 ;
8771  int res1 = 0 ;
8772  double result;
8773 
8774  if (SWIG_GetArgs(interp, objc, objv,"o:a_tetrahedron_quality self ",(void *)0) == TCL_ERROR) SWIG_fail;
8775  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8776  if (!SWIG_IsOK(res1)) {
8777  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_quality" "', argument " "1"" of type '" "a_tetrahedron const *""'");
8778  }
8779  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8780  try {
8781  result = (double)((a_tetrahedron const *)arg1)->quality();
8782  } catch(a_segment::denomin_error &_e) {
8784  }
8785  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
8786  return TCL_OK;
8787 fail:
8788  return TCL_ERROR;
8789 }
8790 
8791 
8792 SWIGINTERN int
8793 _wrap_a_tetrahedron_equals(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8794  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8795  a_tetrahedron *arg2 = 0 ;
8796  void *argp1 = 0 ;
8797  int res1 = 0 ;
8798  void *argp2 ;
8799  int res2 = 0 ;
8800  bool result;
8801 
8802  if (SWIG_GetArgs(interp, objc, objv,"oo:a_tetrahedron_equals self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
8803  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8804  if (!SWIG_IsOK(res1)) {
8805  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_equals" "', argument " "1"" of type '" "a_tetrahedron *""'");
8806  }
8807  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8808  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_tetrahedron, 0 );
8809  if (!SWIG_IsOK(res2)) {
8810  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_tetrahedron_equals" "', argument " "2"" of type '" "a_tetrahedron const &""'");
8811  }
8812  if (!argp2) {
8813  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_equals" "', argument " "2"" of type '" "a_tetrahedron const &""'");
8814  }
8815  arg2 = reinterpret_cast< a_tetrahedron * >(argp2);
8816  try {
8817  result = (bool)(arg1)->operator ==((a_tetrahedron const &)*arg2);
8818  } catch(a_segment::denomin_error &_e) {
8820  }
8821  Tcl_SetObjResult(interp,SWIG_From_bool(static_cast< bool >(result)));
8822  return TCL_OK;
8823 fail:
8824  return TCL_ERROR;
8825 }
8826 
8827 
8828 SWIGINTERN int
8829 _wrap_a_tetrahedron_e___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8830  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8831  a_tetrahedron *arg2 = 0 ;
8832  void *argp1 = 0 ;
8833  int res1 = 0 ;
8834  void *argp2 ;
8835  int res2 = 0 ;
8836  a_tetrahedron *result = 0 ;
8837 
8838  if (SWIG_GetArgs(interp, objc, objv,"oo:a_tetrahedron_= self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
8839  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8840  if (!SWIG_IsOK(res1)) {
8841  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_=" "', argument " "1"" of type '" "a_tetrahedron *""'");
8842  }
8843  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8844  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_tetrahedron, 0 );
8845  if (!SWIG_IsOK(res2)) {
8846  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_tetrahedron_=" "', argument " "2"" of type '" "a_tetrahedron const &""'");
8847  }
8848  if (!argp2) {
8849  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_=" "', argument " "2"" of type '" "a_tetrahedron const &""'");
8850  }
8851  arg2 = reinterpret_cast< a_tetrahedron * >(argp2);
8852  try {
8853  result = (a_tetrahedron *) &(arg1)->operator =((a_tetrahedron const &)*arg2);
8854  } catch(a_segment::denomin_error &_e) {
8856  }
8857  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_tetrahedron,0));
8858  return TCL_OK;
8859 fail:
8860  return TCL_ERROR;
8861 }
8862 
8863 
8864 SWIGINTERN int
8865 _wrap_a_tetrahedron_read(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8866  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8867  std::istream *arg2 = 0 ;
8868  void *argp1 = 0 ;
8869  int res1 = 0 ;
8870  void *argp2 = 0 ;
8871  int res2 = 0 ;
8872 
8873  if (SWIG_GetArgs(interp, objc, objv,"oo:a_tetrahedron_read self i ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
8874  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8875  if (!SWIG_IsOK(res1)) {
8876  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_read" "', argument " "1"" of type '" "a_tetrahedron *""'");
8877  }
8878  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8879  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_std__istream, 0 );
8880  if (!SWIG_IsOK(res2)) {
8881  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_tetrahedron_read" "', argument " "2"" of type '" "std::istream &""'");
8882  }
8883  if (!argp2) {
8884  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_read" "', argument " "2"" of type '" "std::istream &""'");
8885  }
8886  arg2 = reinterpret_cast< std::istream * >(argp2);
8887  try {
8888  (arg1)->read(*arg2);
8889  } catch(a_segment::denomin_error &_e) {
8891  }
8892 
8893  return TCL_OK;
8894 fail:
8895  return TCL_ERROR;
8896 }
8897 
8898 
8899 SWIGINTERN int
8900 _wrap_a_tetrahedron_write(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8901  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8902  std::ostream *arg2 = 0 ;
8903  void *argp1 = 0 ;
8904  int res1 = 0 ;
8905  void *argp2 = 0 ;
8906  int res2 = 0 ;
8907 
8908  if (SWIG_GetArgs(interp, objc, objv,"oo:a_tetrahedron_write self o ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
8909  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, 0 | 0 );
8910  if (!SWIG_IsOK(res1)) {
8911  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_tetrahedron_write" "', argument " "1"" of type '" "a_tetrahedron const *""'");
8912  }
8913  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8914  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_std__ostream, 0 );
8915  if (!SWIG_IsOK(res2)) {
8916  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_tetrahedron_write" "', argument " "2"" of type '" "std::ostream &""'");
8917  }
8918  if (!argp2) {
8919  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_tetrahedron_write" "', argument " "2"" of type '" "std::ostream &""'");
8920  }
8921  arg2 = reinterpret_cast< std::ostream * >(argp2);
8922  try {
8923  ((a_tetrahedron const *)arg1)->write(*arg2);
8924  } catch(a_segment::denomin_error &_e) {
8926  }
8927 
8928  return TCL_OK;
8929 fail:
8930  return TCL_ERROR;
8931 }
8932 
8933 
8934 SWIGINTERN int
8935 _wrap_delete_a_tetrahedron(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8936  a_tetrahedron *arg1 = (a_tetrahedron *) 0 ;
8937  void *argp1 = 0 ;
8938  int res1 = 0 ;
8939 
8940  if (SWIG_GetArgs(interp, objc, objv,"o:delete_a_tetrahedron self ",(void *)0) == TCL_ERROR) SWIG_fail;
8941  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_tetrahedron, SWIG_POINTER_DISOWN | 0 );
8942  if (!SWIG_IsOK(res1)) {
8943  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_a_tetrahedron" "', argument " "1"" of type '" "a_tetrahedron *""'");
8944  }
8945  arg1 = reinterpret_cast< a_tetrahedron * >(argp1);
8946  delete arg1;
8947 
8948  return TCL_OK;
8949 fail:
8950  return TCL_ERROR;
8951 }
8952 
8953 
8955 a_tetrahedron *arg1 = (a_tetrahedron *) obj;
8956 delete arg1;
8957 }
8959  {"classname", _wrap_a_tetrahedron_classname},
8960  {"p", _wrap_a_tetrahedron_p},
8961  {"p1", _wrap_a_tetrahedron_p1},
8962  {"p2", _wrap_a_tetrahedron_p2},
8963  {"p3", _wrap_a_tetrahedron_p3},
8964  {"p4", _wrap_a_tetrahedron_p4},
8965  {"set", _wrap_a_tetrahedron_set},
8966  {"s", _wrap_a_tetrahedron_s},
8967  {"f", _wrap_a_tetrahedron_f},
8968  {"c", _wrap_a_tetrahedron_c},
8969  {"translate", _wrap_a_tetrahedron_translate},
8970  {"rotate", _wrap_a_tetrahedron_rotate},
8971  {"V", _wrap_a_tetrahedron_V},
8972  {"S", _wrap_a_tetrahedron_S},
8973  {"contains", _wrap_a_tetrahedron_contains},
8974  {"quality", _wrap_a_tetrahedron_quality},
8975  {"equals", _wrap_a_tetrahedron_equals},
8976  {"=", _wrap_a_tetrahedron_e___},
8977  {"read", _wrap_a_tetrahedron_read},
8978  {"write", _wrap_a_tetrahedron_write},
8979  {0,0}
8980 };
8982  {0,0,0}
8983 };
8985 static const char * swig_a_tetrahedron_base_names[] = {"a_geom_base *",0};
8987 SWIGINTERN int
8988 _wrap_new_a_triangle__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
8989  a_point *arg1 = 0 ;
8990  a_point *arg2 = 0 ;
8991  a_point *arg3 = 0 ;
8992  void *argp1 ;
8993  int res1 = 0 ;
8994  void *argp2 ;
8995  int res2 = 0 ;
8996  void *argp3 ;
8997  int res3 = 0 ;
8998  a_triangle *result = 0 ;
8999 
9000  if (SWIG_GetArgs(interp, objc, objv,"ooo:new_a_triangle p1 p2 p3 ",(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
9001  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_point, 0 );
9002  if (!SWIG_IsOK(res1)) {
9003  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_a_triangle" "', argument " "1"" of type '" "a_point const &""'");
9004  }
9005  if (!argp1) {
9006  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_triangle" "', argument " "1"" of type '" "a_point const &""'");
9007  }
9008  arg1 = reinterpret_cast< a_point * >(argp1);
9009  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
9010  if (!SWIG_IsOK(res2)) {
9011  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_a_triangle" "', argument " "2"" of type '" "a_point const &""'");
9012  }
9013  if (!argp2) {
9014  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_triangle" "', argument " "2"" of type '" "a_point const &""'");
9015  }
9016  arg2 = reinterpret_cast< a_point * >(argp2);
9017  res3 = SWIG_ConvertPtr(objv[3], &argp3, SWIGTYPE_p_a_point, 0 );
9018  if (!SWIG_IsOK(res3)) {
9019  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "new_a_triangle" "', argument " "3"" of type '" "a_point const &""'");
9020  }
9021  if (!argp3) {
9022  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_triangle" "', argument " "3"" of type '" "a_point const &""'");
9023  }
9024  arg3 = reinterpret_cast< a_point * >(argp3);
9025  try {
9026  result = (a_triangle *)new a_triangle((a_point const &)*arg1,(a_point const &)*arg2,(a_point const &)*arg3);
9027  } catch(a_segment::denomin_error &_e) {
9029  }
9030  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_triangle,0));
9031  return TCL_OK;
9032 fail:
9033  return TCL_ERROR;
9034 }
9035 
9036 
9037 SWIGINTERN int
9038 _wrap_new_a_triangle__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9039  a_triangle *arg1 = 0 ;
9040  void *argp1 ;
9041  int res1 = 0 ;
9042  a_triangle *result = 0 ;
9043 
9044  if (SWIG_GetArgs(interp, objc, objv,"o:new_a_triangle p ",(void *)0) == TCL_ERROR) SWIG_fail;
9045  res1 = SWIG_ConvertPtr(objv[1], &argp1, SWIGTYPE_p_a_triangle, 0 );
9046  if (!SWIG_IsOK(res1)) {
9047  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_a_triangle" "', argument " "1"" of type '" "a_triangle const &""'");
9048  }
9049  if (!argp1) {
9050  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_a_triangle" "', argument " "1"" of type '" "a_triangle const &""'");
9051  }
9052  arg1 = reinterpret_cast< a_triangle * >(argp1);
9053  try {
9054  result = (a_triangle *)new a_triangle((a_triangle const &)*arg1);
9055  } catch(a_segment::denomin_error &_e) {
9057  }
9058  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_triangle,0));
9059  return TCL_OK;
9060 fail:
9061  return TCL_ERROR;
9062 }
9063 
9064 
9065 SWIGINTERN int
9066 _wrap_new_a_triangle(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9067  Tcl_Obj *CONST *argv = objv+1;
9068  int argc = objc-1;
9069  if (argc == 1) {
9070  int _v;
9071  void *vptr = 0;
9072  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_triangle, SWIG_POINTER_NO_NULL);
9073  _v = SWIG_CheckState(res);
9074  if (_v) {
9075  return _wrap_new_a_triangle__SWIG_1(clientData, interp, objc, argv - 1);
9076  }
9077  }
9078  if (argc == 3) {
9079  int _v;
9080  void *vptr = 0;
9081  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
9082  _v = SWIG_CheckState(res);
9083  if (_v) {
9084  void *vptr = 0;
9085  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
9086  _v = SWIG_CheckState(res);
9087  if (_v) {
9088  void *vptr = 0;
9089  int res = SWIG_ConvertPtr(argv[2], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
9090  _v = SWIG_CheckState(res);
9091  if (_v) {
9092  return _wrap_new_a_triangle__SWIG_0(clientData, interp, objc, argv - 1);
9093  }
9094  }
9095  }
9096  }
9097 
9098  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'new_a_triangle'.\n"
9099  " Possible C/C++ prototypes are:\n"
9100  " a_triangle::a_triangle(a_point const &,a_point const &,a_point const &)\n"
9101  " a_triangle::a_triangle(a_triangle const &)\n", TCL_STATIC);
9102  return TCL_ERROR;
9103 }
9104 
9105 
9106 SWIGINTERN int
9107 _wrap_a_triangle_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9108  std::string result;
9109 
9110  if (SWIG_GetArgs(interp, objc, objv,":a_triangle_help ") == TCL_ERROR) SWIG_fail;
9111  try {
9112  result = a_triangle::help();
9113  } catch(a_segment::denomin_error &_e) {
9115  }
9116  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
9117  return TCL_OK;
9118 fail:
9119  return TCL_ERROR;
9120 }
9121 
9122 
9123 SWIGINTERN int
9124 _wrap_a_triangle_p1__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9125  a_triangle *arg1 = (a_triangle *) 0 ;
9126  void *argp1 = 0 ;
9127  int res1 = 0 ;
9128  a_point result;
9129 
9130  if (SWIG_GetArgs(interp, objc, objv,"o:a_triangle_p1 self ",(void *)0) == TCL_ERROR) SWIG_fail;
9131  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9132  if (!SWIG_IsOK(res1)) {
9133  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_p1" "', argument " "1"" of type '" "a_triangle const *""'");
9134  }
9135  arg1 = reinterpret_cast< a_triangle * >(argp1);
9136  try {
9137  result = ((a_triangle const *)arg1)->p1();
9138  } catch(a_segment::denomin_error &_e) {
9140  }
9141  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
9142  return TCL_OK;
9143 fail:
9144  return TCL_ERROR;
9145 }
9146 
9147 
9148 SWIGINTERN int
9149 _wrap_a_triangle_p2__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9150  a_triangle *arg1 = (a_triangle *) 0 ;
9151  void *argp1 = 0 ;
9152  int res1 = 0 ;
9153  a_point result;
9154 
9155  if (SWIG_GetArgs(interp, objc, objv,"o:a_triangle_p2 self ",(void *)0) == TCL_ERROR) SWIG_fail;
9156  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9157  if (!SWIG_IsOK(res1)) {
9158  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_p2" "', argument " "1"" of type '" "a_triangle const *""'");
9159  }
9160  arg1 = reinterpret_cast< a_triangle * >(argp1);
9161  try {
9162  result = ((a_triangle const *)arg1)->p2();
9163  } catch(a_segment::denomin_error &_e) {
9165  }
9166  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
9167  return TCL_OK;
9168 fail:
9169  return TCL_ERROR;
9170 }
9171 
9172 
9173 SWIGINTERN int
9174 _wrap_a_triangle_p3__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9175  a_triangle *arg1 = (a_triangle *) 0 ;
9176  void *argp1 = 0 ;
9177  int res1 = 0 ;
9178  a_point result;
9179 
9180  if (SWIG_GetArgs(interp, objc, objv,"o:a_triangle_p3 self ",(void *)0) == TCL_ERROR) SWIG_fail;
9181  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9182  if (!SWIG_IsOK(res1)) {
9183  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_p3" "', argument " "1"" of type '" "a_triangle const *""'");
9184  }
9185  arg1 = reinterpret_cast< a_triangle * >(argp1);
9186  try {
9187  result = ((a_triangle const *)arg1)->p3();
9188  } catch(a_segment::denomin_error &_e) {
9190  }
9191  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
9192  return TCL_OK;
9193 fail:
9194  return TCL_ERROR;
9195 }
9196 
9197 
9198 SWIGINTERN int
9199 _wrap_a_triangle_p(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9200  a_triangle *arg1 = (a_triangle *) 0 ;
9201  int arg2 ;
9202  void *argp1 = 0 ;
9203  int res1 = 0 ;
9204  int val2 ;
9205  int ecode2 = 0 ;
9206  a_point result;
9207 
9208  if (SWIG_GetArgs(interp, objc, objv,"oo:a_triangle_p self i ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
9209  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9210  if (!SWIG_IsOK(res1)) {
9211  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_p" "', argument " "1"" of type '" "a_triangle const *""'");
9212  }
9213  arg1 = reinterpret_cast< a_triangle * >(argp1);
9214  ecode2 = SWIG_AsVal_int SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
9215  if (!SWIG_IsOK(ecode2)) {
9216  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_triangle_p" "', argument " "2"" of type '" "int""'");
9217  }
9218  arg2 = static_cast< int >(val2);
9219  try {
9220  result = ((a_triangle const *)arg1)->p(arg2);
9221  } catch(a_segment::denomin_error &_e) {
9223  }
9224  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
9225  return TCL_OK;
9226 fail:
9227  return TCL_ERROR;
9228 }
9229 
9230 
9231 SWIGINTERN int
9232 _wrap_a_triangle_p1__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9233  a_triangle *arg1 = (a_triangle *) 0 ;
9234  a_point *arg2 = 0 ;
9235  void *argp1 = 0 ;
9236  int res1 = 0 ;
9237  void *argp2 ;
9238  int res2 = 0 ;
9239 
9240  if (SWIG_GetArgs(interp, objc, objv,"oo:a_triangle_p1 self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
9241  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9242  if (!SWIG_IsOK(res1)) {
9243  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_p1" "', argument " "1"" of type '" "a_triangle *""'");
9244  }
9245  arg1 = reinterpret_cast< a_triangle * >(argp1);
9246  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
9247  if (!SWIG_IsOK(res2)) {
9248  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_triangle_p1" "', argument " "2"" of type '" "a_point const &""'");
9249  }
9250  if (!argp2) {
9251  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_p1" "', argument " "2"" of type '" "a_point const &""'");
9252  }
9253  arg2 = reinterpret_cast< a_point * >(argp2);
9254  try {
9255  (arg1)->p1((a_point const &)*arg2);
9256  } catch(a_segment::denomin_error &_e) {
9258  }
9259 
9260  return TCL_OK;
9261 fail:
9262  return TCL_ERROR;
9263 }
9264 
9265 
9266 SWIGINTERN int
9267 _wrap_a_triangle_p1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9268  Tcl_Obj *CONST *argv = objv+1;
9269  int argc = objc-1;
9270  if (argc == 1) {
9271  int _v;
9272  void *vptr = 0;
9273  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_triangle, 0);
9274  _v = SWIG_CheckState(res);
9275  if (_v) {
9276  return _wrap_a_triangle_p1__SWIG_0(clientData, interp, objc, argv - 1);
9277  }
9278  }
9279  if (argc == 2) {
9280  int _v;
9281  void *vptr = 0;
9282  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_triangle, 0);
9283  _v = SWIG_CheckState(res);
9284  if (_v) {
9285  void *vptr = 0;
9286  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
9287  _v = SWIG_CheckState(res);
9288  if (_v) {
9289  return _wrap_a_triangle_p1__SWIG_1(clientData, interp, objc, argv - 1);
9290  }
9291  }
9292  }
9293 
9294  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_triangle_p1'.\n"
9295  " Possible C/C++ prototypes are:\n"
9296  " a_triangle::p1() const\n"
9297  " a_triangle::p1(a_point const &)\n", TCL_STATIC);
9298  return TCL_ERROR;
9299 }
9300 
9301 
9302 SWIGINTERN int
9303 _wrap_a_triangle_p2__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9304  a_triangle *arg1 = (a_triangle *) 0 ;
9305  a_point *arg2 = 0 ;
9306  void *argp1 = 0 ;
9307  int res1 = 0 ;
9308  void *argp2 ;
9309  int res2 = 0 ;
9310 
9311  if (SWIG_GetArgs(interp, objc, objv,"oo:a_triangle_p2 self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
9312  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9313  if (!SWIG_IsOK(res1)) {
9314  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_p2" "', argument " "1"" of type '" "a_triangle *""'");
9315  }
9316  arg1 = reinterpret_cast< a_triangle * >(argp1);
9317  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
9318  if (!SWIG_IsOK(res2)) {
9319  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_triangle_p2" "', argument " "2"" of type '" "a_point const &""'");
9320  }
9321  if (!argp2) {
9322  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_p2" "', argument " "2"" of type '" "a_point const &""'");
9323  }
9324  arg2 = reinterpret_cast< a_point * >(argp2);
9325  try {
9326  (arg1)->p2((a_point const &)*arg2);
9327  } catch(a_segment::denomin_error &_e) {
9329  }
9330 
9331  return TCL_OK;
9332 fail:
9333  return TCL_ERROR;
9334 }
9335 
9336 
9337 SWIGINTERN int
9338 _wrap_a_triangle_p2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9339  Tcl_Obj *CONST *argv = objv+1;
9340  int argc = objc-1;
9341  if (argc == 1) {
9342  int _v;
9343  void *vptr = 0;
9344  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_triangle, 0);
9345  _v = SWIG_CheckState(res);
9346  if (_v) {
9347  return _wrap_a_triangle_p2__SWIG_0(clientData, interp, objc, argv - 1);
9348  }
9349  }
9350  if (argc == 2) {
9351  int _v;
9352  void *vptr = 0;
9353  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_triangle, 0);
9354  _v = SWIG_CheckState(res);
9355  if (_v) {
9356  void *vptr = 0;
9357  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
9358  _v = SWIG_CheckState(res);
9359  if (_v) {
9360  return _wrap_a_triangle_p2__SWIG_1(clientData, interp, objc, argv - 1);
9361  }
9362  }
9363  }
9364 
9365  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_triangle_p2'.\n"
9366  " Possible C/C++ prototypes are:\n"
9367  " a_triangle::p2() const\n"
9368  " a_triangle::p2(a_point const &)\n", TCL_STATIC);
9369  return TCL_ERROR;
9370 }
9371 
9372 
9373 SWIGINTERN int
9374 _wrap_a_triangle_p3__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9375  a_triangle *arg1 = (a_triangle *) 0 ;
9376  a_point *arg2 = 0 ;
9377  void *argp1 = 0 ;
9378  int res1 = 0 ;
9379  void *argp2 ;
9380  int res2 = 0 ;
9381 
9382  if (SWIG_GetArgs(interp, objc, objv,"oo:a_triangle_p3 self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
9383  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9384  if (!SWIG_IsOK(res1)) {
9385  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_p3" "', argument " "1"" of type '" "a_triangle *""'");
9386  }
9387  arg1 = reinterpret_cast< a_triangle * >(argp1);
9388  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
9389  if (!SWIG_IsOK(res2)) {
9390  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_triangle_p3" "', argument " "2"" of type '" "a_point const &""'");
9391  }
9392  if (!argp2) {
9393  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_p3" "', argument " "2"" of type '" "a_point const &""'");
9394  }
9395  arg2 = reinterpret_cast< a_point * >(argp2);
9396  try {
9397  (arg1)->p3((a_point const &)*arg2);
9398  } catch(a_segment::denomin_error &_e) {
9400  }
9401 
9402  return TCL_OK;
9403 fail:
9404  return TCL_ERROR;
9405 }
9406 
9407 
9408 SWIGINTERN int
9409 _wrap_a_triangle_p3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9410  Tcl_Obj *CONST *argv = objv+1;
9411  int argc = objc-1;
9412  if (argc == 1) {
9413  int _v;
9414  void *vptr = 0;
9415  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_triangle, 0);
9416  _v = SWIG_CheckState(res);
9417  if (_v) {
9418  return _wrap_a_triangle_p3__SWIG_0(clientData, interp, objc, argv - 1);
9419  }
9420  }
9421  if (argc == 2) {
9422  int _v;
9423  void *vptr = 0;
9424  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_triangle, 0);
9425  _v = SWIG_CheckState(res);
9426  if (_v) {
9427  void *vptr = 0;
9428  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
9429  _v = SWIG_CheckState(res);
9430  if (_v) {
9431  return _wrap_a_triangle_p3__SWIG_1(clientData, interp, objc, argv - 1);
9432  }
9433  }
9434  }
9435 
9436  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_triangle_p3'.\n"
9437  " Possible C/C++ prototypes are:\n"
9438  " a_triangle::p3() const\n"
9439  " a_triangle::p3(a_point const &)\n", TCL_STATIC);
9440  return TCL_ERROR;
9441 }
9442 
9443 
9444 SWIGINTERN int
9445 _wrap_a_triangle_set(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9446  a_triangle *arg1 = (a_triangle *) 0 ;
9447  a_point *arg2 = 0 ;
9448  a_point *arg3 = 0 ;
9449  a_point *arg4 = 0 ;
9450  void *argp1 = 0 ;
9451  int res1 = 0 ;
9452  void *argp2 ;
9453  int res2 = 0 ;
9454  void *argp3 ;
9455  int res3 = 0 ;
9456  void *argp4 ;
9457  int res4 = 0 ;
9458 
9459  if (SWIG_GetArgs(interp, objc, objv,"oooo:a_triangle_set self p1 p2 p3 ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
9460  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9461  if (!SWIG_IsOK(res1)) {
9462  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_set" "', argument " "1"" of type '" "a_triangle *""'");
9463  }
9464  arg1 = reinterpret_cast< a_triangle * >(argp1);
9465  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
9466  if (!SWIG_IsOK(res2)) {
9467  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_triangle_set" "', argument " "2"" of type '" "a_point const &""'");
9468  }
9469  if (!argp2) {
9470  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_set" "', argument " "2"" of type '" "a_point const &""'");
9471  }
9472  arg2 = reinterpret_cast< a_point * >(argp2);
9473  res3 = SWIG_ConvertPtr(objv[3], &argp3, SWIGTYPE_p_a_point, 0 );
9474  if (!SWIG_IsOK(res3)) {
9475  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "a_triangle_set" "', argument " "3"" of type '" "a_point const &""'");
9476  }
9477  if (!argp3) {
9478  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_set" "', argument " "3"" of type '" "a_point const &""'");
9479  }
9480  arg3 = reinterpret_cast< a_point * >(argp3);
9481  res4 = SWIG_ConvertPtr(objv[4], &argp4, SWIGTYPE_p_a_point, 0 );
9482  if (!SWIG_IsOK(res4)) {
9483  SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "a_triangle_set" "', argument " "4"" of type '" "a_point const &""'");
9484  }
9485  if (!argp4) {
9486  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_set" "', argument " "4"" of type '" "a_point const &""'");
9487  }
9488  arg4 = reinterpret_cast< a_point * >(argp4);
9489  try {
9490  (arg1)->set((a_point const &)*arg2,(a_point const &)*arg3,(a_point const &)*arg4);
9491  } catch(a_segment::denomin_error &_e) {
9493  }
9494 
9495  return TCL_OK;
9496 fail:
9497  return TCL_ERROR;
9498 }
9499 
9500 
9501 SWIGINTERN int
9502 _wrap_a_triangle_s1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9503  a_triangle *arg1 = (a_triangle *) 0 ;
9504  void *argp1 = 0 ;
9505  int res1 = 0 ;
9506  a_segment result;
9507 
9508  if (SWIG_GetArgs(interp, objc, objv,"o:a_triangle_s1 self ",(void *)0) == TCL_ERROR) SWIG_fail;
9509  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9510  if (!SWIG_IsOK(res1)) {
9511  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_s1" "', argument " "1"" of type '" "a_triangle const *""'");
9512  }
9513  arg1 = reinterpret_cast< a_triangle * >(argp1);
9514  try {
9515  result = ((a_triangle const *)arg1)->s1();
9516  } catch(a_segment::denomin_error &_e) {
9518  }
9519  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_segment(static_cast< const a_segment& >(result))), SWIGTYPE_p_a_segment, SWIG_POINTER_OWN | 0 ));
9520  return TCL_OK;
9521 fail:
9522  return TCL_ERROR;
9523 }
9524 
9525 
9526 SWIGINTERN int
9527 _wrap_a_triangle_s2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9528  a_triangle *arg1 = (a_triangle *) 0 ;
9529  void *argp1 = 0 ;
9530  int res1 = 0 ;
9531  a_segment result;
9532 
9533  if (SWIG_GetArgs(interp, objc, objv,"o:a_triangle_s2 self ",(void *)0) == TCL_ERROR) SWIG_fail;
9534  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9535  if (!SWIG_IsOK(res1)) {
9536  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_s2" "', argument " "1"" of type '" "a_triangle const *""'");
9537  }
9538  arg1 = reinterpret_cast< a_triangle * >(argp1);
9539  try {
9540  result = ((a_triangle const *)arg1)->s2();
9541  } catch(a_segment::denomin_error &_e) {
9543  }
9544  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_segment(static_cast< const a_segment& >(result))), SWIGTYPE_p_a_segment, SWIG_POINTER_OWN | 0 ));
9545  return TCL_OK;
9546 fail:
9547  return TCL_ERROR;
9548 }
9549 
9550 
9551 SWIGINTERN int
9552 _wrap_a_triangle_s3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9553  a_triangle *arg1 = (a_triangle *) 0 ;
9554  void *argp1 = 0 ;
9555  int res1 = 0 ;
9556  a_segment result;
9557 
9558  if (SWIG_GetArgs(interp, objc, objv,"o:a_triangle_s3 self ",(void *)0) == TCL_ERROR) SWIG_fail;
9559  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9560  if (!SWIG_IsOK(res1)) {
9561  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_s3" "', argument " "1"" of type '" "a_triangle const *""'");
9562  }
9563  arg1 = reinterpret_cast< a_triangle * >(argp1);
9564  try {
9565  result = ((a_triangle const *)arg1)->s3();
9566  } catch(a_segment::denomin_error &_e) {
9568  }
9569  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_segment(static_cast< const a_segment& >(result))), SWIGTYPE_p_a_segment, SWIG_POINTER_OWN | 0 ));
9570  return TCL_OK;
9571 fail:
9572  return TCL_ERROR;
9573 }
9574 
9575 
9576 SWIGINTERN int
9577 _wrap_a_triangle_s(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9578  a_triangle *arg1 = (a_triangle *) 0 ;
9579  int arg2 ;
9580  void *argp1 = 0 ;
9581  int res1 = 0 ;
9582  int val2 ;
9583  int ecode2 = 0 ;
9584  a_segment result;
9585 
9586  if (SWIG_GetArgs(interp, objc, objv,"oo:a_triangle_s self ref ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
9587  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9588  if (!SWIG_IsOK(res1)) {
9589  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_s" "', argument " "1"" of type '" "a_triangle const *""'");
9590  }
9591  arg1 = reinterpret_cast< a_triangle * >(argp1);
9592  ecode2 = SWIG_AsVal_int SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
9593  if (!SWIG_IsOK(ecode2)) {
9594  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_triangle_s" "', argument " "2"" of type '" "int""'");
9595  }
9596  arg2 = static_cast< int >(val2);
9597  try {
9598  result = ((a_triangle const *)arg1)->s(arg2);
9599  } catch(a_segment::denomin_error &_e) {
9601  }
9602  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_segment(static_cast< const a_segment& >(result))), SWIGTYPE_p_a_segment, SWIG_POINTER_OWN | 0 ));
9603  return TCL_OK;
9604 fail:
9605  return TCL_ERROR;
9606 }
9607 
9608 
9609 SWIGINTERN int
9610 _wrap_a_triangle_c(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9611  a_triangle *arg1 = (a_triangle *) 0 ;
9612  void *argp1 = 0 ;
9613  int res1 = 0 ;
9614  a_point result;
9615 
9616  if (SWIG_GetArgs(interp, objc, objv,"o:a_triangle_c self ",(void *)0) == TCL_ERROR) SWIG_fail;
9617  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9618  if (!SWIG_IsOK(res1)) {
9619  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_c" "', argument " "1"" of type '" "a_triangle const *""'");
9620  }
9621  arg1 = reinterpret_cast< a_triangle * >(argp1);
9622  try {
9623  result = ((a_triangle const *)arg1)->c();
9624  } catch(a_segment::denomin_error &_e) {
9626  }
9627  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
9628  return TCL_OK;
9629 fail:
9630  return TCL_ERROR;
9631 }
9632 
9633 
9634 SWIGINTERN int
9635 _wrap_a_triangle_translate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9636  a_triangle *arg1 = (a_triangle *) 0 ;
9637  double arg2 ;
9638  double arg3 ;
9639  double arg4 ;
9640  void *argp1 = 0 ;
9641  int res1 = 0 ;
9642  double val2 ;
9643  int ecode2 = 0 ;
9644  double val3 ;
9645  int ecode3 = 0 ;
9646  double val4 ;
9647  int ecode4 = 0 ;
9648  a_triangle *result = 0 ;
9649 
9650  if (SWIG_GetArgs(interp, objc, objv,"oooo:a_triangle_translate self x y z ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
9651  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9652  if (!SWIG_IsOK(res1)) {
9653  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_translate" "', argument " "1"" of type '" "a_triangle *""'");
9654  }
9655  arg1 = reinterpret_cast< a_triangle * >(argp1);
9656  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
9657  if (!SWIG_IsOK(ecode2)) {
9658  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_triangle_translate" "', argument " "2"" of type '" "double""'");
9659  }
9660  arg2 = static_cast< double >(val2);
9661  ecode3 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[3], &val3);
9662  if (!SWIG_IsOK(ecode3)) {
9663  SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "a_triangle_translate" "', argument " "3"" of type '" "double""'");
9664  }
9665  arg3 = static_cast< double >(val3);
9666  ecode4 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[4], &val4);
9667  if (!SWIG_IsOK(ecode4)) {
9668  SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "a_triangle_translate" "', argument " "4"" of type '" "double""'");
9669  }
9670  arg4 = static_cast< double >(val4);
9671  try {
9672  result = (a_triangle *) &(arg1)->translate(arg2,arg3,arg4);
9673  } catch(a_segment::denomin_error &_e) {
9675  }
9676  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_triangle,0));
9677  return TCL_OK;
9678 fail:
9679  return TCL_ERROR;
9680 }
9681 
9682 
9683 SWIGINTERN int
9684 _wrap_a_triangle_rotate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9685  a_triangle *arg1 = (a_triangle *) 0 ;
9686  a_point *arg2 = 0 ;
9687  a_point *arg3 = 0 ;
9688  a_point *arg4 = 0 ;
9689  void *argp1 = 0 ;
9690  int res1 = 0 ;
9691  void *argp2 ;
9692  int res2 = 0 ;
9693  void *argp3 ;
9694  int res3 = 0 ;
9695  void *argp4 ;
9696  int res4 = 0 ;
9697  a_triangle *result = 0 ;
9698 
9699  if (SWIG_GetArgs(interp, objc, objv,"oooo:a_triangle_rotate self x_axis y_axis z_axis ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
9700  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9701  if (!SWIG_IsOK(res1)) {
9702  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_rotate" "', argument " "1"" of type '" "a_triangle *""'");
9703  }
9704  arg1 = reinterpret_cast< a_triangle * >(argp1);
9705  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
9706  if (!SWIG_IsOK(res2)) {
9707  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_triangle_rotate" "', argument " "2"" of type '" "a_point const &""'");
9708  }
9709  if (!argp2) {
9710  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_rotate" "', argument " "2"" of type '" "a_point const &""'");
9711  }
9712  arg2 = reinterpret_cast< a_point * >(argp2);
9713  res3 = SWIG_ConvertPtr(objv[3], &argp3, SWIGTYPE_p_a_point, 0 );
9714  if (!SWIG_IsOK(res3)) {
9715  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "a_triangle_rotate" "', argument " "3"" of type '" "a_point const &""'");
9716  }
9717  if (!argp3) {
9718  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_rotate" "', argument " "3"" of type '" "a_point const &""'");
9719  }
9720  arg3 = reinterpret_cast< a_point * >(argp3);
9721  res4 = SWIG_ConvertPtr(objv[4], &argp4, SWIGTYPE_p_a_point, 0 );
9722  if (!SWIG_IsOK(res4)) {
9723  SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "a_triangle_rotate" "', argument " "4"" of type '" "a_point const &""'");
9724  }
9725  if (!argp4) {
9726  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_rotate" "', argument " "4"" of type '" "a_point const &""'");
9727  }
9728  arg4 = reinterpret_cast< a_point * >(argp4);
9729  try {
9730  result = (a_triangle *) &(arg1)->rotate((a_point const &)*arg2,(a_point const &)*arg3,(a_point const &)*arg4);
9731  } catch(a_segment::denomin_error &_e) {
9733  }
9734  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_triangle,0));
9735  return TCL_OK;
9736 fail:
9737  return TCL_ERROR;
9738 }
9739 
9740 
9741 SWIGINTERN int
9742 _wrap_a_triangle_invert(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9743  a_triangle *arg1 = (a_triangle *) 0 ;
9744  void *argp1 = 0 ;
9745  int res1 = 0 ;
9746  a_triangle *result = 0 ;
9747 
9748  if (SWIG_GetArgs(interp, objc, objv,"o:a_triangle_invert self ",(void *)0) == TCL_ERROR) SWIG_fail;
9749  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9750  if (!SWIG_IsOK(res1)) {
9751  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_invert" "', argument " "1"" of type '" "a_triangle *""'");
9752  }
9753  arg1 = reinterpret_cast< a_triangle * >(argp1);
9754  try {
9755  result = (a_triangle *) &(arg1)->invert();
9756  } catch(a_segment::denomin_error &_e) {
9758  }
9759  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_triangle,0));
9760  return TCL_OK;
9761 fail:
9762  return TCL_ERROR;
9763 }
9764 
9765 
9766 SWIGINTERN int
9767 _wrap_a_triangle_normal(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9768  a_triangle *arg1 = (a_triangle *) 0 ;
9769  void *argp1 = 0 ;
9770  int res1 = 0 ;
9771  a_point result;
9772 
9773  if (SWIG_GetArgs(interp, objc, objv,"o:a_triangle_normal self ",(void *)0) == TCL_ERROR) SWIG_fail;
9774  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9775  if (!SWIG_IsOK(res1)) {
9776  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_normal" "', argument " "1"" of type '" "a_triangle const *""'");
9777  }
9778  arg1 = reinterpret_cast< a_triangle * >(argp1);
9779  try {
9780  result = ((a_triangle const *)arg1)->normal();
9781  } catch(a_segment::denomin_error &_e) {
9783  }
9784  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
9785  return TCL_OK;
9786 fail:
9787  return TCL_ERROR;
9788 }
9789 
9790 
9791 SWIGINTERN int
9792 _wrap_a_triangle_S(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9793  a_triangle *arg1 = (a_triangle *) 0 ;
9794  void *argp1 = 0 ;
9795  int res1 = 0 ;
9796  double result;
9797 
9798  if (SWIG_GetArgs(interp, objc, objv,"o:a_triangle_S self ",(void *)0) == TCL_ERROR) SWIG_fail;
9799  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9800  if (!SWIG_IsOK(res1)) {
9801  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_S" "', argument " "1"" of type '" "a_triangle const *""'");
9802  }
9803  arg1 = reinterpret_cast< a_triangle * >(argp1);
9804  try {
9805  result = (double)((a_triangle const *)arg1)->S();
9806  } catch(a_segment::denomin_error &_e) {
9808  }
9809  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
9810  return TCL_OK;
9811 fail:
9812  return TCL_ERROR;
9813 }
9814 
9815 
9816 SWIGINTERN int
9817 _wrap_a_triangle_contains(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9818  a_triangle *arg1 = (a_triangle *) 0 ;
9819  a_point *arg2 = 0 ;
9820  void *argp1 = 0 ;
9821  int res1 = 0 ;
9822  void *argp2 ;
9823  int res2 = 0 ;
9824  bool result;
9825 
9826  if (SWIG_GetArgs(interp, objc, objv,"oo:a_triangle_contains self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
9827  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9828  if (!SWIG_IsOK(res1)) {
9829  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_contains" "', argument " "1"" of type '" "a_triangle const *""'");
9830  }
9831  arg1 = reinterpret_cast< a_triangle * >(argp1);
9832  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
9833  if (!SWIG_IsOK(res2)) {
9834  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_triangle_contains" "', argument " "2"" of type '" "a_point const &""'");
9835  }
9836  if (!argp2) {
9837  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_contains" "', argument " "2"" of type '" "a_point const &""'");
9838  }
9839  arg2 = reinterpret_cast< a_point * >(argp2);
9840  try {
9841  result = (bool)((a_triangle const *)arg1)->contains((a_point const &)*arg2);
9842  } catch(a_segment::denomin_error &_e) {
9844  }
9845  Tcl_SetObjResult(interp,SWIG_From_bool(static_cast< bool >(result)));
9846  return TCL_OK;
9847 fail:
9848  return TCL_ERROR;
9849 }
9850 
9851 
9852 SWIGINTERN int
9853 _wrap_a_triangle_closest(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9854  a_triangle *arg1 = (a_triangle *) 0 ;
9855  a_point *arg2 = 0 ;
9856  void *argp1 = 0 ;
9857  int res1 = 0 ;
9858  void *argp2 ;
9859  int res2 = 0 ;
9860  a_point result;
9861 
9862  if (SWIG_GetArgs(interp, objc, objv,"oo:a_triangle_closest self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
9863  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9864  if (!SWIG_IsOK(res1)) {
9865  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_closest" "', argument " "1"" of type '" "a_triangle const *""'");
9866  }
9867  arg1 = reinterpret_cast< a_triangle * >(argp1);
9868  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
9869  if (!SWIG_IsOK(res2)) {
9870  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_triangle_closest" "', argument " "2"" of type '" "a_point const &""'");
9871  }
9872  if (!argp2) {
9873  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_closest" "', argument " "2"" of type '" "a_point const &""'");
9874  }
9875  arg2 = reinterpret_cast< a_point * >(argp2);
9876  try {
9877  result = ((a_triangle const *)arg1)->closest((a_point const &)*arg2);
9878  } catch(a_segment::denomin_error &_e) {
9880  }
9881  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
9882  return TCL_OK;
9883 fail:
9884  return TCL_ERROR;
9885 }
9886 
9887 
9888 SWIGINTERN int
9889 _wrap_a_triangle_closestp(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9890  a_triangle *arg1 = (a_triangle *) 0 ;
9891  a_point *arg2 = 0 ;
9892  void *argp1 = 0 ;
9893  int res1 = 0 ;
9894  void *argp2 ;
9895  int res2 = 0 ;
9896  a_point result;
9897 
9898  if (SWIG_GetArgs(interp, objc, objv,"oo:a_triangle_closestp self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
9899  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9900  if (!SWIG_IsOK(res1)) {
9901  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_closestp" "', argument " "1"" of type '" "a_triangle const *""'");
9902  }
9903  arg1 = reinterpret_cast< a_triangle * >(argp1);
9904  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
9905  if (!SWIG_IsOK(res2)) {
9906  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_triangle_closestp" "', argument " "2"" of type '" "a_point const &""'");
9907  }
9908  if (!argp2) {
9909  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_closestp" "', argument " "2"" of type '" "a_point const &""'");
9910  }
9911  arg2 = reinterpret_cast< a_point * >(argp2);
9912  try {
9913  result = ((a_triangle const *)arg1)->closestp((a_point const &)*arg2);
9914  } catch(a_segment::denomin_error &_e) {
9916  }
9917  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
9918  return TCL_OK;
9919 fail:
9920  return TCL_ERROR;
9921 }
9922 
9923 
9924 SWIGINTERN int
9925 _wrap_a_triangle_dist(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9926  a_triangle *arg1 = (a_triangle *) 0 ;
9927  a_point *arg2 = 0 ;
9928  void *argp1 = 0 ;
9929  int res1 = 0 ;
9930  void *argp2 ;
9931  int res2 = 0 ;
9932  double result;
9933 
9934  if (SWIG_GetArgs(interp, objc, objv,"oo:a_triangle_dist self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
9935  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9936  if (!SWIG_IsOK(res1)) {
9937  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_dist" "', argument " "1"" of type '" "a_triangle const *""'");
9938  }
9939  arg1 = reinterpret_cast< a_triangle * >(argp1);
9940  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
9941  if (!SWIG_IsOK(res2)) {
9942  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_triangle_dist" "', argument " "2"" of type '" "a_point const &""'");
9943  }
9944  if (!argp2) {
9945  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_dist" "', argument " "2"" of type '" "a_point const &""'");
9946  }
9947  arg2 = reinterpret_cast< a_point * >(argp2);
9948  try {
9949  result = (double)((a_triangle const *)arg1)->dist((a_point const &)*arg2);
9950  } catch(a_segment::denomin_error &_e) {
9952  }
9953  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
9954  return TCL_OK;
9955 fail:
9956  return TCL_ERROR;
9957 }
9958 
9959 
9960 SWIGINTERN int
9961 _wrap_a_triangle_distp(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9962  a_triangle *arg1 = (a_triangle *) 0 ;
9963  a_point *arg2 = 0 ;
9964  void *argp1 = 0 ;
9965  int res1 = 0 ;
9966  void *argp2 ;
9967  int res2 = 0 ;
9968  double result;
9969 
9970  if (SWIG_GetArgs(interp, objc, objv,"oo:a_triangle_distp self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
9971  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
9972  if (!SWIG_IsOK(res1)) {
9973  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_distp" "', argument " "1"" of type '" "a_triangle const *""'");
9974  }
9975  arg1 = reinterpret_cast< a_triangle * >(argp1);
9976  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
9977  if (!SWIG_IsOK(res2)) {
9978  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_triangle_distp" "', argument " "2"" of type '" "a_point const &""'");
9979  }
9980  if (!argp2) {
9981  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_distp" "', argument " "2"" of type '" "a_point const &""'");
9982  }
9983  arg2 = reinterpret_cast< a_point * >(argp2);
9984  try {
9985  result = (double)((a_triangle const *)arg1)->distp((a_point const &)*arg2);
9986  } catch(a_segment::denomin_error &_e) {
9988  }
9989  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
9990  return TCL_OK;
9991 fail:
9992  return TCL_ERROR;
9993 }
9994 
9995 
9996 SWIGINTERN int
9997 _wrap_a_triangle_intersect(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
9998  a_triangle *arg1 = (a_triangle *) 0 ;
9999  a_segment *arg2 = 0 ;
10000  void *argp1 = 0 ;
10001  int res1 = 0 ;
10002  void *argp2 ;
10003  int res2 = 0 ;
10004  a_segment result;
10005 
10006  if (SWIG_GetArgs(interp, objc, objv,"oo:a_triangle_intersect self s ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
10007  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
10008  if (!SWIG_IsOK(res1)) {
10009  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_intersect" "', argument " "1"" of type '" "a_triangle const *""'");
10010  }
10011  arg1 = reinterpret_cast< a_triangle * >(argp1);
10012  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_segment, 0 );
10013  if (!SWIG_IsOK(res2)) {
10014  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_triangle_intersect" "', argument " "2"" of type '" "a_segment const &""'");
10015  }
10016  if (!argp2) {
10017  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_intersect" "', argument " "2"" of type '" "a_segment const &""'");
10018  }
10019  arg2 = reinterpret_cast< a_segment * >(argp2);
10020  try {
10021  result = ((a_triangle const *)arg1)->intersect((a_segment const &)*arg2);
10022  } catch(a_segment::denomin_error &_e) {
10024  }
10025  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_segment(static_cast< const a_segment& >(result))), SWIGTYPE_p_a_segment, SWIG_POINTER_OWN | 0 ));
10026  return TCL_OK;
10027 fail:
10028  return TCL_ERROR;
10029 }
10030 
10031 
10032 SWIGINTERN int
10033 _wrap_a_triangle_min_edge(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10034  a_triangle *arg1 = (a_triangle *) 0 ;
10035  void *argp1 = 0 ;
10036  int res1 = 0 ;
10037  double result;
10038 
10039  if (SWIG_GetArgs(interp, objc, objv,"o:a_triangle_min_edge self ",(void *)0) == TCL_ERROR) SWIG_fail;
10040  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
10041  if (!SWIG_IsOK(res1)) {
10042  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_min_edge" "', argument " "1"" of type '" "a_triangle const *""'");
10043  }
10044  arg1 = reinterpret_cast< a_triangle * >(argp1);
10045  try {
10046  result = (double)((a_triangle const *)arg1)->min_edge();
10047  } catch(a_segment::denomin_error &_e) {
10049  }
10050  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
10051  return TCL_OK;
10052 fail:
10053  return TCL_ERROR;
10054 }
10055 
10056 
10057 SWIGINTERN int
10058 _wrap_a_triangle_max_edge(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10059  a_triangle *arg1 = (a_triangle *) 0 ;
10060  void *argp1 = 0 ;
10061  int res1 = 0 ;
10062  double result;
10063 
10064  if (SWIG_GetArgs(interp, objc, objv,"o:a_triangle_max_edge self ",(void *)0) == TCL_ERROR) SWIG_fail;
10065  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
10066  if (!SWIG_IsOK(res1)) {
10067  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_max_edge" "', argument " "1"" of type '" "a_triangle const *""'");
10068  }
10069  arg1 = reinterpret_cast< a_triangle * >(argp1);
10070  try {
10071  result = (double)((a_triangle const *)arg1)->max_edge();
10072  } catch(a_segment::denomin_error &_e) {
10074  }
10075  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
10076  return TCL_OK;
10077 fail:
10078  return TCL_ERROR;
10079 }
10080 
10081 
10082 SWIGINTERN int
10083 _wrap_a_triangle_quality(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10084  a_triangle *arg1 = (a_triangle *) 0 ;
10085  void *argp1 = 0 ;
10086  int res1 = 0 ;
10087  double result;
10088 
10089  if (SWIG_GetArgs(interp, objc, objv,"o:a_triangle_quality self ",(void *)0) == TCL_ERROR) SWIG_fail;
10090  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
10091  if (!SWIG_IsOK(res1)) {
10092  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_quality" "', argument " "1"" of type '" "a_triangle const *""'");
10093  }
10094  arg1 = reinterpret_cast< a_triangle * >(argp1);
10095  try {
10096  result = (double)((a_triangle const *)arg1)->quality();
10097  } catch(a_segment::denomin_error &_e) {
10099  }
10100  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
10101  return TCL_OK;
10102 fail:
10103  return TCL_ERROR;
10104 }
10105 
10106 
10107 SWIGINTERN int
10108 _wrap_a_triangle_equals(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10109  a_triangle *arg1 = (a_triangle *) 0 ;
10110  a_triangle *arg2 = 0 ;
10111  void *argp1 = 0 ;
10112  int res1 = 0 ;
10113  void *argp2 ;
10114  int res2 = 0 ;
10115  bool result;
10116 
10117  if (SWIG_GetArgs(interp, objc, objv,"oo:a_triangle_equals self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
10118  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
10119  if (!SWIG_IsOK(res1)) {
10120  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_equals" "', argument " "1"" of type '" "a_triangle *""'");
10121  }
10122  arg1 = reinterpret_cast< a_triangle * >(argp1);
10123  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_triangle, 0 );
10124  if (!SWIG_IsOK(res2)) {
10125  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_triangle_equals" "', argument " "2"" of type '" "a_triangle const &""'");
10126  }
10127  if (!argp2) {
10128  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_equals" "', argument " "2"" of type '" "a_triangle const &""'");
10129  }
10130  arg2 = reinterpret_cast< a_triangle * >(argp2);
10131  try {
10132  result = (bool)(arg1)->operator ==((a_triangle const &)*arg2);
10133  } catch(a_segment::denomin_error &_e) {
10135  }
10136  Tcl_SetObjResult(interp,SWIG_From_bool(static_cast< bool >(result)));
10137  return TCL_OK;
10138 fail:
10139  return TCL_ERROR;
10140 }
10141 
10142 
10143 SWIGINTERN int
10144 _wrap_a_triangle_e___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10145  a_triangle *arg1 = (a_triangle *) 0 ;
10146  a_triangle *arg2 = 0 ;
10147  void *argp1 = 0 ;
10148  int res1 = 0 ;
10149  void *argp2 ;
10150  int res2 = 0 ;
10151  a_triangle *result = 0 ;
10152 
10153  if (SWIG_GetArgs(interp, objc, objv,"oo:a_triangle_= self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
10154  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, 0 | 0 );
10155  if (!SWIG_IsOK(res1)) {
10156  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_triangle_=" "', argument " "1"" of type '" "a_triangle *""'");
10157  }
10158  arg1 = reinterpret_cast< a_triangle * >(argp1);
10159  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_triangle, 0 );
10160  if (!SWIG_IsOK(res2)) {
10161  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_triangle_=" "', argument " "2"" of type '" "a_triangle const &""'");
10162  }
10163  if (!argp2) {
10164  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_triangle_=" "', argument " "2"" of type '" "a_triangle const &""'");
10165  }
10166  arg2 = reinterpret_cast< a_triangle * >(argp2);
10167  try {
10168  result = (a_triangle *) &(arg1)->operator =((a_triangle const &)*arg2);
10169  } catch(a_segment::denomin_error &_e) {
10171  }
10172  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_triangle,0));
10173  return TCL_OK;
10174 fail:
10175  return TCL_ERROR;
10176 }
10177 
10178 
10179 SWIGINTERN int
10180 _wrap_delete_a_triangle(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10181  a_triangle *arg1 = (a_triangle *) 0 ;
10182  void *argp1 = 0 ;
10183  int res1 = 0 ;
10184 
10185  if (SWIG_GetArgs(interp, objc, objv,"o:delete_a_triangle self ",(void *)0) == TCL_ERROR) SWIG_fail;
10186  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_triangle, SWIG_POINTER_DISOWN | 0 );
10187  if (!SWIG_IsOK(res1)) {
10188  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_a_triangle" "', argument " "1"" of type '" "a_triangle *""'");
10189  }
10190  arg1 = reinterpret_cast< a_triangle * >(argp1);
10191  delete arg1;
10192 
10193  return TCL_OK;
10194 fail:
10195  return TCL_ERROR;
10196 }
10197 
10198 
10200 a_triangle *arg1 = (a_triangle *) obj;
10201 delete arg1;
10202 }
10204  {"p", _wrap_a_triangle_p},
10205  {"p1", _wrap_a_triangle_p1},
10206  {"p2", _wrap_a_triangle_p2},
10207  {"p3", _wrap_a_triangle_p3},
10208  {"set", _wrap_a_triangle_set},
10209  {"s1", _wrap_a_triangle_s1},
10210  {"s2", _wrap_a_triangle_s2},
10211  {"s3", _wrap_a_triangle_s3},
10212  {"s", _wrap_a_triangle_s},
10213  {"c", _wrap_a_triangle_c},
10214  {"translate", _wrap_a_triangle_translate},
10215  {"rotate", _wrap_a_triangle_rotate},
10216  {"invert", _wrap_a_triangle_invert},
10217  {"normal", _wrap_a_triangle_normal},
10218  {"S", _wrap_a_triangle_S},
10219  {"contains", _wrap_a_triangle_contains},
10220  {"closest", _wrap_a_triangle_closest},
10221  {"closestp", _wrap_a_triangle_closestp},
10222  {"dist", _wrap_a_triangle_dist},
10223  {"distp", _wrap_a_triangle_distp},
10224  {"intersect", _wrap_a_triangle_intersect},
10225  {"min_edge", _wrap_a_triangle_min_edge},
10226  {"max_edge", _wrap_a_triangle_max_edge},
10227  {"quality", _wrap_a_triangle_quality},
10228  {"equals", _wrap_a_triangle_equals},
10229  {"=", _wrap_a_triangle_e___},
10230  {0,0}
10231 };
10233  {0,0,0}
10234 };
10236 static const char * swig_a_triangle_base_names[] = {"a_geom_base *",0};
10238 SWIGINTERN int
10239 _wrap_new_a_circle(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10240  a_circle *result = 0 ;
10241 
10242  if (SWIG_GetArgs(interp, objc, objv,":new_a_circle ") == TCL_ERROR) SWIG_fail;
10243  try {
10244  result = (a_circle *)new a_circle();
10245  } catch(a_segment::denomin_error &_e) {
10247  }
10248  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_circle,0));
10249  return TCL_OK;
10250 fail:
10251  return TCL_ERROR;
10252 }
10253 
10254 
10255 SWIGINTERN int
10256 _wrap_a_circle_classname(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10257  a_circle *arg1 = (a_circle *) 0 ;
10258  void *argp1 = 0 ;
10259  int res1 = 0 ;
10260  std::string result;
10261 
10262  if (SWIG_GetArgs(interp, objc, objv,"o:a_circle_classname self ",(void *)0) == TCL_ERROR) SWIG_fail;
10263  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_circle, 0 | 0 );
10264  if (!SWIG_IsOK(res1)) {
10265  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_circle_classname" "', argument " "1"" of type '" "a_circle *""'");
10266  }
10267  arg1 = reinterpret_cast< a_circle * >(argp1);
10268  try {
10269  result = (arg1)->classname();
10270  } catch(a_segment::denomin_error &_e) {
10272  }
10273  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
10274  return TCL_OK;
10275 fail:
10276  return TCL_ERROR;
10277 }
10278 
10279 
10280 SWIGINTERN int
10281 _wrap_a_circle_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10282  std::string result;
10283 
10284  if (SWIG_GetArgs(interp, objc, objv,":a_circle_help ") == TCL_ERROR) SWIG_fail;
10285  try {
10286  result = a_circle::help();
10287  } catch(a_segment::denomin_error &_e) {
10289  }
10290  Tcl_SetObjResult(interp,SWIG_From_std_string(static_cast< std::string >(result)));
10291  return TCL_OK;
10292 fail:
10293  return TCL_ERROR;
10294 }
10295 
10296 
10297 SWIGINTERN int
10298 _wrap_a_circle_centre__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10299  a_circle *arg1 = (a_circle *) 0 ;
10300  a_point arg2 ;
10301  void *argp1 = 0 ;
10302  int res1 = 0 ;
10303  void *argp2 ;
10304  int res2 = 0 ;
10305 
10306  if (SWIG_GetArgs(interp, objc, objv,"oo:a_circle_centre self c ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
10307  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_circle, 0 | 0 );
10308  if (!SWIG_IsOK(res1)) {
10309  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_circle_centre" "', argument " "1"" of type '" "a_circle *""'");
10310  }
10311  arg1 = reinterpret_cast< a_circle * >(argp1);
10312  {
10313  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
10314  if (!SWIG_IsOK(res2)) {
10315  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_circle_centre" "', argument " "2"" of type '" "a_point const""'");
10316  }
10317  if (!argp2) {
10318  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_circle_centre" "', argument " "2"" of type '" "a_point const""'");
10319  } else {
10320  arg2 = *(reinterpret_cast< a_point * >(argp2));
10321  }
10322  }
10323  try {
10324  (arg1)->centre(arg2);
10325  } catch(a_segment::denomin_error &_e) {
10327  }
10328 
10329  return TCL_OK;
10330 fail:
10331  return TCL_ERROR;
10332 }
10333 
10334 
10335 SWIGINTERN int
10336 _wrap_a_circle_centre__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10337  a_circle *arg1 = (a_circle *) 0 ;
10338  void *argp1 = 0 ;
10339  int res1 = 0 ;
10340  a_point result;
10341 
10342  if (SWIG_GetArgs(interp, objc, objv,"o:a_circle_centre self ",(void *)0) == TCL_ERROR) SWIG_fail;
10343  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_circle, 0 | 0 );
10344  if (!SWIG_IsOK(res1)) {
10345  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_circle_centre" "', argument " "1"" of type '" "a_circle const *""'");
10346  }
10347  arg1 = reinterpret_cast< a_circle * >(argp1);
10348  try {
10349  result = ((a_circle const *)arg1)->centre();
10350  } catch(a_segment::denomin_error &_e) {
10352  }
10353  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
10354  return TCL_OK;
10355 fail:
10356  return TCL_ERROR;
10357 }
10358 
10359 
10360 SWIGINTERN int
10361 _wrap_a_circle_centre(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10362  Tcl_Obj *CONST *argv = objv+1;
10363  int argc = objc-1;
10364  if (argc == 1) {
10365  int _v;
10366  void *vptr = 0;
10367  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_circle, 0);
10368  _v = SWIG_CheckState(res);
10369  if (_v) {
10370  return _wrap_a_circle_centre__SWIG_1(clientData, interp, objc, argv - 1);
10371  }
10372  }
10373  if (argc == 2) {
10374  int _v;
10375  void *vptr = 0;
10376  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_circle, 0);
10377  _v = SWIG_CheckState(res);
10378  if (_v) {
10379  void *vptr = 0;
10380  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
10381  _v = SWIG_CheckState(res);
10382  if (_v) {
10383  return _wrap_a_circle_centre__SWIG_0(clientData, interp, objc, argv - 1);
10384  }
10385  }
10386  }
10387 
10388  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_circle_centre'.\n"
10389  " Possible C/C++ prototypes are:\n"
10390  " a_circle::centre(a_point const)\n"
10391  " a_circle::centre() const\n", TCL_STATIC);
10392  return TCL_ERROR;
10393 }
10394 
10395 
10396 SWIGINTERN int
10397 _wrap_a_circle_normal__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10398  a_circle *arg1 = (a_circle *) 0 ;
10399  a_point arg2 ;
10400  void *argp1 = 0 ;
10401  int res1 = 0 ;
10402  void *argp2 ;
10403  int res2 = 0 ;
10404 
10405  if (SWIG_GetArgs(interp, objc, objv,"oo:a_circle_normal self n ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
10406  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_circle, 0 | 0 );
10407  if (!SWIG_IsOK(res1)) {
10408  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_circle_normal" "', argument " "1"" of type '" "a_circle *""'");
10409  }
10410  arg1 = reinterpret_cast< a_circle * >(argp1);
10411  {
10412  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
10413  if (!SWIG_IsOK(res2)) {
10414  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_circle_normal" "', argument " "2"" of type '" "a_point const""'");
10415  }
10416  if (!argp2) {
10417  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_circle_normal" "', argument " "2"" of type '" "a_point const""'");
10418  } else {
10419  arg2 = *(reinterpret_cast< a_point * >(argp2));
10420  }
10421  }
10422  try {
10423  (arg1)->normal(arg2);
10424  } catch(a_segment::denomin_error &_e) {
10426  }
10427 
10428  return TCL_OK;
10429 fail:
10430  return TCL_ERROR;
10431 }
10432 
10433 
10434 SWIGINTERN int
10435 _wrap_a_circle_normal__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10436  a_circle *arg1 = (a_circle *) 0 ;
10437  void *argp1 = 0 ;
10438  int res1 = 0 ;
10439  a_point result;
10440 
10441  if (SWIG_GetArgs(interp, objc, objv,"o:a_circle_normal self ",(void *)0) == TCL_ERROR) SWIG_fail;
10442  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_circle, 0 | 0 );
10443  if (!SWIG_IsOK(res1)) {
10444  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_circle_normal" "', argument " "1"" of type '" "a_circle const *""'");
10445  }
10446  arg1 = reinterpret_cast< a_circle * >(argp1);
10447  try {
10448  result = ((a_circle const *)arg1)->normal();
10449  } catch(a_segment::denomin_error &_e) {
10451  }
10452  Tcl_SetObjResult(interp,SWIG_NewInstanceObj((new a_point(static_cast< const a_point& >(result))), SWIGTYPE_p_a_point, SWIG_POINTER_OWN | 0 ));
10453  return TCL_OK;
10454 fail:
10455  return TCL_ERROR;
10456 }
10457 
10458 
10459 SWIGINTERN int
10460 _wrap_a_circle_normal(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10461  Tcl_Obj *CONST *argv = objv+1;
10462  int argc = objc-1;
10463  if (argc == 1) {
10464  int _v;
10465  void *vptr = 0;
10466  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_circle, 0);
10467  _v = SWIG_CheckState(res);
10468  if (_v) {
10469  return _wrap_a_circle_normal__SWIG_1(clientData, interp, objc, argv - 1);
10470  }
10471  }
10472  if (argc == 2) {
10473  int _v;
10474  void *vptr = 0;
10475  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_circle, 0);
10476  _v = SWIG_CheckState(res);
10477  if (_v) {
10478  void *vptr = 0;
10479  int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_a_point, SWIG_POINTER_NO_NULL);
10480  _v = SWIG_CheckState(res);
10481  if (_v) {
10482  return _wrap_a_circle_normal__SWIG_0(clientData, interp, objc, argv - 1);
10483  }
10484  }
10485  }
10486 
10487  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_circle_normal'.\n"
10488  " Possible C/C++ prototypes are:\n"
10489  " a_circle::normal(a_point const)\n"
10490  " a_circle::normal() const\n", TCL_STATIC);
10491  return TCL_ERROR;
10492 }
10493 
10494 
10495 SWIGINTERN int
10496 _wrap_a_circle_radius__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10497  a_circle *arg1 = (a_circle *) 0 ;
10498  double arg2 ;
10499  void *argp1 = 0 ;
10500  int res1 = 0 ;
10501  double val2 ;
10502  int ecode2 = 0 ;
10503 
10504  if (SWIG_GetArgs(interp, objc, objv,"oo:a_circle_radius self r ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
10505  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_circle, 0 | 0 );
10506  if (!SWIG_IsOK(res1)) {
10507  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_circle_radius" "', argument " "1"" of type '" "a_circle *""'");
10508  }
10509  arg1 = reinterpret_cast< a_circle * >(argp1);
10510  ecode2 = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(objv[2], &val2);
10511  if (!SWIG_IsOK(ecode2)) {
10512  SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "a_circle_radius" "', argument " "2"" of type '" "double""'");
10513  }
10514  arg2 = static_cast< double >(val2);
10515  try {
10516  (arg1)->radius(arg2);
10517  } catch(a_segment::denomin_error &_e) {
10519  }
10520 
10521  return TCL_OK;
10522 fail:
10523  return TCL_ERROR;
10524 }
10525 
10526 
10527 SWIGINTERN int
10528 _wrap_a_circle_radius__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10529  a_circle *arg1 = (a_circle *) 0 ;
10530  void *argp1 = 0 ;
10531  int res1 = 0 ;
10532  double result;
10533 
10534  if (SWIG_GetArgs(interp, objc, objv,"o:a_circle_radius self ",(void *)0) == TCL_ERROR) SWIG_fail;
10535  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_circle, 0 | 0 );
10536  if (!SWIG_IsOK(res1)) {
10537  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_circle_radius" "', argument " "1"" of type '" "a_circle const *""'");
10538  }
10539  arg1 = reinterpret_cast< a_circle * >(argp1);
10540  try {
10541  result = (double)((a_circle const *)arg1)->radius();
10542  } catch(a_segment::denomin_error &_e) {
10544  }
10545  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
10546  return TCL_OK;
10547 fail:
10548  return TCL_ERROR;
10549 }
10550 
10551 
10552 SWIGINTERN int
10553 _wrap_a_circle_radius(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10554  Tcl_Obj *CONST *argv = objv+1;
10555  int argc = objc-1;
10556  if (argc == 1) {
10557  int _v;
10558  void *vptr = 0;
10559  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_circle, 0);
10560  _v = SWIG_CheckState(res);
10561  if (_v) {
10562  return _wrap_a_circle_radius__SWIG_1(clientData, interp, objc, argv - 1);
10563  }
10564  }
10565  if (argc == 2) {
10566  int _v;
10567  void *vptr = 0;
10568  int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_a_circle, 0);
10569  _v = SWIG_CheckState(res);
10570  if (_v) {
10571  {
10572  int res = SWIG_AsVal_double SWIG_TCL_CALL_ARGS_2(argv[1], NULL);
10573  _v = SWIG_CheckState(res);
10574  }
10575  if (_v) {
10576  return _wrap_a_circle_radius__SWIG_0(clientData, interp, objc, argv - 1);
10577  }
10578  }
10579  }
10580 
10581  Tcl_SetResult(interp,(char *) "Wrong number or type of arguments for overloaded function 'a_circle_radius'.\n"
10582  " Possible C/C++ prototypes are:\n"
10583  " a_circle::radius(double)\n"
10584  " a_circle::radius() const\n", TCL_STATIC);
10585  return TCL_ERROR;
10586 }
10587 
10588 
10589 SWIGINTERN int
10590 _wrap_a_circle_p3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10591  a_circle *arg1 = (a_circle *) 0 ;
10592  a_point arg2 ;
10593  a_point arg3 ;
10594  a_point arg4 ;
10595  void *argp1 = 0 ;
10596  int res1 = 0 ;
10597  void *argp2 ;
10598  int res2 = 0 ;
10599  void *argp3 ;
10600  int res3 = 0 ;
10601  void *argp4 ;
10602  int res4 = 0 ;
10603 
10604  if (SWIG_GetArgs(interp, objc, objv,"oooo:a_circle_p3 self p1 p2 p3 ",(void *)0,(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
10605  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_circle, 0 | 0 );
10606  if (!SWIG_IsOK(res1)) {
10607  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_circle_p3" "', argument " "1"" of type '" "a_circle *""'");
10608  }
10609  arg1 = reinterpret_cast< a_circle * >(argp1);
10610  {
10611  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
10612  if (!SWIG_IsOK(res2)) {
10613  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_circle_p3" "', argument " "2"" of type '" "a_point const""'");
10614  }
10615  if (!argp2) {
10616  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_circle_p3" "', argument " "2"" of type '" "a_point const""'");
10617  } else {
10618  arg2 = *(reinterpret_cast< a_point * >(argp2));
10619  }
10620  }
10621  {
10622  res3 = SWIG_ConvertPtr(objv[3], &argp3, SWIGTYPE_p_a_point, 0 );
10623  if (!SWIG_IsOK(res3)) {
10624  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "a_circle_p3" "', argument " "3"" of type '" "a_point const""'");
10625  }
10626  if (!argp3) {
10627  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_circle_p3" "', argument " "3"" of type '" "a_point const""'");
10628  } else {
10629  arg3 = *(reinterpret_cast< a_point * >(argp3));
10630  }
10631  }
10632  {
10633  res4 = SWIG_ConvertPtr(objv[4], &argp4, SWIGTYPE_p_a_point, 0 );
10634  if (!SWIG_IsOK(res4)) {
10635  SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "a_circle_p3" "', argument " "4"" of type '" "a_point const""'");
10636  }
10637  if (!argp4) {
10638  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_circle_p3" "', argument " "4"" of type '" "a_point const""'");
10639  } else {
10640  arg4 = *(reinterpret_cast< a_point * >(argp4));
10641  }
10642  }
10643  try {
10644  (arg1)->p3(arg2,arg3,arg4);
10645  } catch(a_segment::denomin_error &_e) {
10647  }
10648 
10649  return TCL_OK;
10650 fail:
10651  return TCL_ERROR;
10652 }
10653 
10654 
10655 SWIGINTERN int
10656 _wrap_a_circle_p2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10657  a_circle *arg1 = (a_circle *) 0 ;
10658  a_point arg2 ;
10659  a_point arg3 ;
10660  void *argp1 = 0 ;
10661  int res1 = 0 ;
10662  void *argp2 ;
10663  int res2 = 0 ;
10664  void *argp3 ;
10665  int res3 = 0 ;
10666 
10667  if (SWIG_GetArgs(interp, objc, objv,"ooo:a_circle_p2 self p1 p2 ",(void *)0,(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
10668  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_circle, 0 | 0 );
10669  if (!SWIG_IsOK(res1)) {
10670  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_circle_p2" "', argument " "1"" of type '" "a_circle *""'");
10671  }
10672  arg1 = reinterpret_cast< a_circle * >(argp1);
10673  {
10674  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_point, 0 );
10675  if (!SWIG_IsOK(res2)) {
10676  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_circle_p2" "', argument " "2"" of type '" "a_point const""'");
10677  }
10678  if (!argp2) {
10679  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_circle_p2" "', argument " "2"" of type '" "a_point const""'");
10680  } else {
10681  arg2 = *(reinterpret_cast< a_point * >(argp2));
10682  }
10683  }
10684  {
10685  res3 = SWIG_ConvertPtr(objv[3], &argp3, SWIGTYPE_p_a_point, 0 );
10686  if (!SWIG_IsOK(res3)) {
10687  SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "a_circle_p2" "', argument " "3"" of type '" "a_point const""'");
10688  }
10689  if (!argp3) {
10690  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_circle_p2" "', argument " "3"" of type '" "a_point const""'");
10691  } else {
10692  arg3 = *(reinterpret_cast< a_point * >(argp3));
10693  }
10694  }
10695  try {
10696  (arg1)->p2(arg2,arg3);
10697  } catch(a_segment::denomin_error &_e) {
10699  }
10700 
10701  return TCL_OK;
10702 fail:
10703  return TCL_ERROR;
10704 }
10705 
10706 
10707 SWIGINTERN int
10708 _wrap_a_circle_equals(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10709  a_circle *arg1 = (a_circle *) 0 ;
10710  a_circle *arg2 = 0 ;
10711  void *argp1 = 0 ;
10712  int res1 = 0 ;
10713  void *argp2 ;
10714  int res2 = 0 ;
10715  bool result;
10716 
10717  if (SWIG_GetArgs(interp, objc, objv,"oo:a_circle_equals self p ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
10718  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_circle, 0 | 0 );
10719  if (!SWIG_IsOK(res1)) {
10720  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_circle_equals" "', argument " "1"" of type '" "a_circle *""'");
10721  }
10722  arg1 = reinterpret_cast< a_circle * >(argp1);
10723  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_circle, 0 );
10724  if (!SWIG_IsOK(res2)) {
10725  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_circle_equals" "', argument " "2"" of type '" "a_circle const &""'");
10726  }
10727  if (!argp2) {
10728  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_circle_equals" "', argument " "2"" of type '" "a_circle const &""'");
10729  }
10730  arg2 = reinterpret_cast< a_circle * >(argp2);
10731  try {
10732  result = (bool)(arg1)->operator ==((a_circle const &)*arg2);
10733  } catch(a_segment::denomin_error &_e) {
10735  }
10736  Tcl_SetObjResult(interp,SWIG_From_bool(static_cast< bool >(result)));
10737  return TCL_OK;
10738 fail:
10739  return TCL_ERROR;
10740 }
10741 
10742 
10743 SWIGINTERN int
10744 _wrap_a_circle_e___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10745  a_circle *arg1 = (a_circle *) 0 ;
10746  a_circle *arg2 = 0 ;
10747  void *argp1 = 0 ;
10748  int res1 = 0 ;
10749  void *argp2 ;
10750  int res2 = 0 ;
10751  a_circle *result = 0 ;
10752 
10753  if (SWIG_GetArgs(interp, objc, objv,"oo:a_circle_= self v ",(void *)0,(void *)0) == TCL_ERROR) SWIG_fail;
10754  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_circle, 0 | 0 );
10755  if (!SWIG_IsOK(res1)) {
10756  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_circle_=" "', argument " "1"" of type '" "a_circle *""'");
10757  }
10758  arg1 = reinterpret_cast< a_circle * >(argp1);
10759  res2 = SWIG_ConvertPtr(objv[2], &argp2, SWIGTYPE_p_a_circle, 0 );
10760  if (!SWIG_IsOK(res2)) {
10761  SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "a_circle_=" "', argument " "2"" of type '" "a_circle const &""'");
10762  }
10763  if (!argp2) {
10764  SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "a_circle_=" "', argument " "2"" of type '" "a_circle const &""'");
10765  }
10766  arg2 = reinterpret_cast< a_circle * >(argp2);
10767  try {
10768  result = (a_circle *) &(arg1)->operator =((a_circle const &)*arg2);
10769  } catch(a_segment::denomin_error &_e) {
10771  }
10772  Tcl_SetObjResult(interp, SWIG_NewInstanceObj( SWIG_as_voidptr(result), SWIGTYPE_p_a_circle,0));
10773  return TCL_OK;
10774 fail:
10775  return TCL_ERROR;
10776 }
10777 
10778 
10779 SWIGINTERN int
10780 _wrap_a_circle_length(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10781  a_circle *arg1 = (a_circle *) 0 ;
10782  void *argp1 = 0 ;
10783  int res1 = 0 ;
10784  double result;
10785 
10786  if (SWIG_GetArgs(interp, objc, objv,"o:a_circle_length self ",(void *)0) == TCL_ERROR) SWIG_fail;
10787  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_circle, 0 | 0 );
10788  if (!SWIG_IsOK(res1)) {
10789  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_circle_length" "', argument " "1"" of type '" "a_circle const *""'");
10790  }
10791  arg1 = reinterpret_cast< a_circle * >(argp1);
10792  try {
10793  result = (double)((a_circle const *)arg1)->length();
10794  } catch(a_segment::denomin_error &_e) {
10796  }
10797  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
10798  return TCL_OK;
10799 fail:
10800  return TCL_ERROR;
10801 }
10802 
10803 
10804 SWIGINTERN int
10805 _wrap_a_circle_area(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10806  a_circle *arg1 = (a_circle *) 0 ;
10807  void *argp1 = 0 ;
10808  int res1 = 0 ;
10809  double result;
10810 
10811  if (SWIG_GetArgs(interp, objc, objv,"o:a_circle_area self ",(void *)0) == TCL_ERROR) SWIG_fail;
10812  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_circle, 0 | 0 );
10813  if (!SWIG_IsOK(res1)) {
10814  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "a_circle_area" "', argument " "1"" of type '" "a_circle const *""'");
10815  }
10816  arg1 = reinterpret_cast< a_circle * >(argp1);
10817  try {
10818  result = (double)((a_circle const *)arg1)->area();
10819  } catch(a_segment::denomin_error &_e) {
10821  }
10822  Tcl_SetObjResult(interp,SWIG_From_double(static_cast< double >(result)));
10823  return TCL_OK;
10824 fail:
10825  return TCL_ERROR;
10826 }
10827 
10828 
10829 SWIGINTERN int
10830 _wrap_delete_a_circle(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
10831  a_circle *arg1 = (a_circle *) 0 ;
10832  void *argp1 = 0 ;
10833  int res1 = 0 ;
10834 
10835  if (SWIG_GetArgs(interp, objc, objv,"o:delete_a_circle self ",(void *)0) == TCL_ERROR) SWIG_fail;
10836  res1 = SWIG_ConvertPtr(objv[1], &argp1,SWIGTYPE_p_a_circle, SWIG_POINTER_DISOWN | 0 );
10837  if (!SWIG_IsOK(res1)) {
10838  SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_a_circle" "', argument " "1"" of type '" "a_circle *""'");
10839  }
10840  arg1 = reinterpret_cast< a_circle * >(argp1);
10841  delete arg1;
10842 
10843  return TCL_OK;
10844 fail:
10845  return TCL_ERROR;
10846 }
10847 
10848 
10850 a_circle *arg1 = (a_circle *) obj;
10851 delete arg1;
10852 }
10854  {"classname", _wrap_a_circle_classname},
10855  {"centre", _wrap_a_circle_centre},
10856  {"normal", _wrap_a_circle_normal},
10857  {"radius", _wrap_a_circle_radius},
10858  {"p3", _wrap_a_circle_p3},
10859  {"p2", _wrap_a_circle_p2},
10860  {"equals", _wrap_a_circle_equals},
10861  {"=", _wrap_a_circle_e___},
10862  {"length", _wrap_a_circle_length},
10863  {"area", _wrap_a_circle_area},
10864  {0,0}
10865 };
10867  {0,0,0}
10868 };
10870 static const char * swig_a_circle_base_names[] = {"a_geom_base *",0};
10872 
10874  { SWIG_prefix "a_base_classname", (swig_wrapper_func) _wrap_a_base_classname, NULL},
10875  { SWIG_prefix "a_base_help", (swig_wrapper_func) _wrap_a_base_help, NULL},
10876  { SWIG_prefix "a_base_small", (swig_wrapper_func) _wrap_a_base_small, NULL},
10877  { SWIG_prefix "a_base_print", (swig_wrapper_func) _wrap_a_base_print, NULL},
10878  { SWIG_prefix "new_a_base", (swig_wrapper_func) _wrap_new_a_base, NULL},
10879  { SWIG_prefix "delete_a_base", (swig_wrapper_func) _wrap_delete_a_base, NULL},
10881  { SWIG_prefix "new_a_3dh", (swig_wrapper_func) _wrap_new_a_3dh, NULL},
10882  { SWIG_prefix "a_3dh_help", (swig_wrapper_func) _wrap_a_3dh_help, NULL},
10883  { SWIG_prefix "a_3dh_X", (swig_wrapper_func) _wrap_a_3dh_X, NULL},
10884  { SWIG_prefix "a_3dh_Y", (swig_wrapper_func) _wrap_a_3dh_Y, NULL},
10885  { SWIG_prefix "a_3dh_Z", (swig_wrapper_func) _wrap_a_3dh_Z, NULL},
10886  { SWIG_prefix "a_3dh_T", (swig_wrapper_func) _wrap_a_3dh_T, NULL},
10887  { SWIG_prefix "a_3dh_x", (swig_wrapper_func) _wrap_a_3dh_x, NULL},
10888  { SWIG_prefix "a_3dh_y", (swig_wrapper_func) _wrap_a_3dh_y, NULL},
10889  { SWIG_prefix "a_3dh_z", (swig_wrapper_func) _wrap_a_3dh_z, NULL},
10890  { SWIG_prefix "a_3dh_set", (swig_wrapper_func) _wrap_a_3dh_set, NULL},
10891  { SWIG_prefix "a_3dh_point", (swig_wrapper_func) _wrap_a_3dh_point, NULL},
10892  { SWIG_prefix "a_3dh_print", (swig_wrapper_func) _wrap_a_3dh_print, NULL},
10893  { SWIG_prefix "delete_a_3dh", (swig_wrapper_func) _wrap_delete_a_3dh, NULL},
10895  { SWIG_prefix "r2d", (swig_wrapper_func) _wrap_r2d, NULL},
10896  { SWIG_prefix "d2r", (swig_wrapper_func) _wrap_d2r, NULL},
10897  { SWIG_prefix "a_geom_base_classname", (swig_wrapper_func) _wrap_a_geom_base_classname, NULL},
10898  { SWIG_prefix "a_geom_base_help", (swig_wrapper_func) _wrap_a_geom_base_help, NULL},
10899  { SWIG_prefix "new_a_geom_base", (swig_wrapper_func) _wrap_new_a_geom_base, NULL},
10900  { SWIG_prefix "delete_a_geom_base", (swig_wrapper_func) _wrap_delete_a_geom_base, NULL},
10902  { SWIG_prefix "cross", (swig_wrapper_func) _wrap_cross, NULL},
10903  { SWIG_prefix "circle_centre", (swig_wrapper_func) _wrap_circle_centre, NULL},
10904  { SWIG_prefix "a_point_help", (swig_wrapper_func) _wrap_a_point_help, NULL},
10905  { SWIG_prefix "a_point_x", (swig_wrapper_func) _wrap_a_point_x, NULL},
10906  { SWIG_prefix "a_point_y", (swig_wrapper_func) _wrap_a_point_y, NULL},
10907  { SWIG_prefix "a_point_z", (swig_wrapper_func) _wrap_a_point_z, NULL},
10908  { SWIG_prefix "a_point_set", (swig_wrapper_func) _wrap_a_point_set, NULL},
10909  { SWIG_prefix "a_point_set_cylindrical", (swig_wrapper_func) _wrap_a_point_set_cylindrical, NULL},
10910  { SWIG_prefix "a_point_set_spherical", (swig_wrapper_func) _wrap_a_point_set_spherical, NULL},
10911  { SWIG_prefix "a_point_translate", (swig_wrapper_func) _wrap_a_point_translate, NULL},
10912  { SWIG_prefix "a_point_rotate", (swig_wrapper_func) _wrap_a_point_rotate, NULL},
10913  { SWIG_prefix "a_point_equals", (swig_wrapper_func) _wrap_a_point_equals, NULL},
10914  { SWIG_prefix "a_point_add", (swig_wrapper_func) _wrap_a_point_add, NULL},
10915  { SWIG_prefix "a_point_subtract", (swig_wrapper_func) _wrap_a_point_subtract, NULL},
10916  { SWIG_prefix "a_point_+", (swig_wrapper_func) _wrap_a_point_a___, NULL},
10917  { SWIG_prefix "a_point_-", (swig_wrapper_func) _wrap_a_point_s___, NULL},
10918  { SWIG_prefix "a_point_*", (swig_wrapper_func) _wrap_a_point_m___, NULL},
10919  { SWIG_prefix "a_point_cross", (swig_wrapper_func) _wrap_a_point_cross, NULL},
10920  { SWIG_prefix "a_point_sumsq", (swig_wrapper_func) _wrap_a_point_sumsq, NULL},
10921  { SWIG_prefix "a_point_norm", (swig_wrapper_func) _wrap_a_point_norm, NULL},
10922  { SWIG_prefix "a_point_norm1", (swig_wrapper_func) _wrap_a_point_norm1, NULL},
10923  { SWIG_prefix "a_point_norm2", (swig_wrapper_func) _wrap_a_point_norm2, NULL},
10924  { SWIG_prefix "a_point_normI", (swig_wrapper_func) _wrap_a_point_normI, NULL},
10925  { SWIG_prefix "a_point_dist", (swig_wrapper_func) _wrap_a_point_dist, NULL},
10926  { SWIG_prefix "a_point_normalise", (swig_wrapper_func) _wrap_a_point_normalise, NULL},
10927  { SWIG_prefix "a_point_max", (swig_wrapper_func) _wrap_a_point_max, NULL},
10928  { SWIG_prefix "new_a_point", (swig_wrapper_func) _wrap_new_a_point, NULL},
10929  { SWIG_prefix "a_point_negate", (swig_wrapper_func) _wrap_a_point_negate, NULL},
10930  { SWIG_prefix "a_point_multiply", (swig_wrapper_func) _wrap_a_point_multiply, NULL},
10931  { SWIG_prefix "a_point_divide", (swig_wrapper_func) _wrap_a_point_divide, NULL},
10932  { SWIG_prefix "delete_a_point", (swig_wrapper_func) _wrap_delete_a_point, NULL},
10934  { SWIG_prefix "a_point2_help", (swig_wrapper_func) _wrap_a_point2_help, NULL},
10935  { SWIG_prefix "a_point2_x", (swig_wrapper_func) _wrap_a_point2_x, NULL},
10936  { SWIG_prefix "a_point2_y", (swig_wrapper_func) _wrap_a_point2_y, NULL},
10937  { SWIG_prefix "a_point2_set", (swig_wrapper_func) _wrap_a_point2_set, NULL},
10938  { SWIG_prefix "a_point2_translate", (swig_wrapper_func) _wrap_a_point2_translate, NULL},
10939  { SWIG_prefix "a_point2_rotate", (swig_wrapper_func) _wrap_a_point2_rotate, NULL},
10940  { SWIG_prefix "a_point2_equals", (swig_wrapper_func) _wrap_a_point2_equals, NULL},
10941  { SWIG_prefix "a_point2_=", (swig_wrapper_func) _wrap_a_point2_e___, NULL},
10942  { SWIG_prefix "a_point2_-", (swig_wrapper_func) _wrap_a_point2_s___, NULL},
10943  { SWIG_prefix "a_point2_add", (swig_wrapper_func) _wrap_a_point2_add, NULL},
10944  { SWIG_prefix "a_point2_subtract", (swig_wrapper_func) _wrap_a_point2_subtract, NULL},
10945  { SWIG_prefix "a_point2_sumsq", (swig_wrapper_func) _wrap_a_point2_sumsq, NULL},
10946  { SWIG_prefix "a_point2_norm", (swig_wrapper_func) _wrap_a_point2_norm, NULL},
10947  { SWIG_prefix "a_point2_dist", (swig_wrapper_func) _wrap_a_point2_dist, NULL},
10948  { SWIG_prefix "a_point2_normalise", (swig_wrapper_func) _wrap_a_point2_normalise, NULL},
10949  { SWIG_prefix "new_a_point2", (swig_wrapper_func) _wrap_new_a_point2, NULL},
10950  { SWIG_prefix "a_point2_negate", (swig_wrapper_func) _wrap_a_point2_negate, NULL},
10951  { SWIG_prefix "a_point2_multiply", (swig_wrapper_func) _wrap_a_point2_multiply, NULL},
10952  { SWIG_prefix "a_point2_divide", (swig_wrapper_func) _wrap_a_point2_divide, NULL},
10953  { SWIG_prefix "delete_a_point2", (swig_wrapper_func) _wrap_delete_a_point2, NULL},
10955  { SWIG_prefix "dist", (swig_wrapper_func) _wrap_dist, NULL},
10956  { SWIG_prefix "angle", (swig_wrapper_func) _wrap_angle, NULL},
10957  { SWIG_prefix "average", (swig_wrapper_func) _wrap_average, NULL},
10958  { SWIG_prefix "average_rot", (swig_wrapper_func) _wrap_average_rot, NULL},
10959  { SWIG_prefix "new_a_segment", (swig_wrapper_func) _wrap_new_a_segment, NULL},
10960  { SWIG_prefix "a_segment_help", (swig_wrapper_func) _wrap_a_segment_help, NULL},
10961  { SWIG_prefix "a_segment_vec", (swig_wrapper_func) _wrap_a_segment_vec, NULL},
10962  { SWIG_prefix "a_segment_dir", (swig_wrapper_func) _wrap_a_segment_dir, NULL},
10963  { SWIG_prefix "a_segment_c", (swig_wrapper_func) _wrap_a_segment_c, NULL},
10964  { SWIG_prefix "a_segment_p1", (swig_wrapper_func) _wrap_a_segment_p1, NULL},
10965  { SWIG_prefix "a_segment_p2", (swig_wrapper_func) _wrap_a_segment_p2, NULL},
10966  { SWIG_prefix "a_segment_translate", (swig_wrapper_func) _wrap_a_segment_translate, NULL},
10967  { SWIG_prefix "a_segment_rotate", (swig_wrapper_func) _wrap_a_segment_rotate, NULL},
10968  { SWIG_prefix "a_segment_equals", (swig_wrapper_func) _wrap_a_segment_equals, NULL},
10969  { SWIG_prefix "a_segment_=", (swig_wrapper_func) _wrap_a_segment_e___, NULL},
10970  { SWIG_prefix "a_segment_length", (swig_wrapper_func) _wrap_a_segment_length, NULL},
10971  { SWIG_prefix "a_segment_project", (swig_wrapper_func) _wrap_a_segment_project, NULL},
10972  { SWIG_prefix "a_segment_closestl", (swig_wrapper_func) _wrap_a_segment_closestl, NULL},
10973  { SWIG_prefix "a_segment_closest", (swig_wrapper_func) _wrap_a_segment_closest, NULL},
10974  { SWIG_prefix "a_segment_intersect", (swig_wrapper_func) _wrap_a_segment_intersect, NULL},
10975  { SWIG_prefix "a_segment_shortest", (swig_wrapper_func) _wrap_a_segment_shortest, NULL},
10976  { SWIG_prefix "a_segment_distl", (swig_wrapper_func) _wrap_a_segment_distl, NULL},
10977  { SWIG_prefix "a_segment_dist", (swig_wrapper_func) _wrap_a_segment_dist, NULL},
10978  { SWIG_prefix "delete_a_segment", (swig_wrapper_func) _wrap_delete_a_segment, NULL},
10980  { SWIG_prefix "new_a_plane", (swig_wrapper_func) _wrap_new_a_plane, NULL},
10981  { SWIG_prefix "a_plane_help", (swig_wrapper_func) _wrap_a_plane_help, NULL},
10982  { SWIG_prefix "a_plane_n", (swig_wrapper_func) _wrap_a_plane_n, NULL},
10983  { SWIG_prefix "a_plane_d0", (swig_wrapper_func) _wrap_a_plane_d0, NULL},
10984  { SWIG_prefix "a_plane_p0", (swig_wrapper_func) _wrap_a_plane_p0, NULL},
10985  { SWIG_prefix "a_plane_dist", (swig_wrapper_func) _wrap_a_plane_dist, NULL},
10986  { SWIG_prefix "a_plane_closest", (swig_wrapper_func) _wrap_a_plane_closest, NULL},
10987  { SWIG_prefix "a_plane_intersect", (swig_wrapper_func) _wrap_a_plane_intersect, NULL},
10988  { SWIG_prefix "a_plane_contains", (swig_wrapper_func) _wrap_a_plane_contains, NULL},
10989  { SWIG_prefix "a_plane_move", (swig_wrapper_func) _wrap_a_plane_move, NULL},
10990  { SWIG_prefix "a_plane_print", (swig_wrapper_func) _wrap_a_plane_print, NULL},
10991  { SWIG_prefix "delete_a_plane", (swig_wrapper_func) _wrap_delete_a_plane, NULL},
10993  { SWIG_prefix "new_a_tetrahedron", (swig_wrapper_func) _wrap_new_a_tetrahedron, NULL},
10994  { SWIG_prefix "a_tetrahedron_classname", (swig_wrapper_func) _wrap_a_tetrahedron_classname, NULL},
10995  { SWIG_prefix "a_tetrahedron_help", (swig_wrapper_func) _wrap_a_tetrahedron_help, NULL},
10996  { SWIG_prefix "a_tetrahedron_p", (swig_wrapper_func) _wrap_a_tetrahedron_p, NULL},
10997  { SWIG_prefix "a_tetrahedron_p1", (swig_wrapper_func) _wrap_a_tetrahedron_p1, NULL},
10998  { SWIG_prefix "a_tetrahedron_p2", (swig_wrapper_func) _wrap_a_tetrahedron_p2, NULL},
10999  { SWIG_prefix "a_tetrahedron_p3", (swig_wrapper_func) _wrap_a_tetrahedron_p3, NULL},
11000  { SWIG_prefix "a_tetrahedron_p4", (swig_wrapper_func) _wrap_a_tetrahedron_p4, NULL},
11001  { SWIG_prefix "a_tetrahedron_set", (swig_wrapper_func) _wrap_a_tetrahedron_set, NULL},
11002  { SWIG_prefix "a_tetrahedron_s", (swig_wrapper_func) _wrap_a_tetrahedron_s, NULL},
11003  { SWIG_prefix "a_tetrahedron_f", (swig_wrapper_func) _wrap_a_tetrahedron_f, NULL},
11004  { SWIG_prefix "a_tetrahedron_c", (swig_wrapper_func) _wrap_a_tetrahedron_c, NULL},
11005  { SWIG_prefix "a_tetrahedron_translate", (swig_wrapper_func) _wrap_a_tetrahedron_translate, NULL},
11006  { SWIG_prefix "a_tetrahedron_rotate", (swig_wrapper_func) _wrap_a_tetrahedron_rotate, NULL},
11007  { SWIG_prefix "a_tetrahedron_V", (swig_wrapper_func) _wrap_a_tetrahedron_V, NULL},
11008  { SWIG_prefix "a_tetrahedron_S", (swig_wrapper_func) _wrap_a_tetrahedron_S, NULL},
11009  { SWIG_prefix "a_tetrahedron_contains", (swig_wrapper_func) _wrap_a_tetrahedron_contains, NULL},
11010  { SWIG_prefix "a_tetrahedron_quality", (swig_wrapper_func) _wrap_a_tetrahedron_quality, NULL},
11011  { SWIG_prefix "a_tetrahedron_equals", (swig_wrapper_func) _wrap_a_tetrahedron_equals, NULL},
11012  { SWIG_prefix "a_tetrahedron_=", (swig_wrapper_func) _wrap_a_tetrahedron_e___, NULL},
11013  { SWIG_prefix "a_tetrahedron_read", (swig_wrapper_func) _wrap_a_tetrahedron_read, NULL},
11014  { SWIG_prefix "a_tetrahedron_write", (swig_wrapper_func) _wrap_a_tetrahedron_write, NULL},
11015  { SWIG_prefix "delete_a_tetrahedron", (swig_wrapper_func) _wrap_delete_a_tetrahedron, NULL},
11017  { SWIG_prefix "new_a_triangle", (swig_wrapper_func) _wrap_new_a_triangle, NULL},
11018  { SWIG_prefix "a_triangle_help", (swig_wrapper_func) _wrap_a_triangle_help, NULL},
11019  { SWIG_prefix "a_triangle_p", (swig_wrapper_func) _wrap_a_triangle_p, NULL},
11020  { SWIG_prefix "a_triangle_p1", (swig_wrapper_func) _wrap_a_triangle_p1, NULL},
11021  { SWIG_prefix "a_triangle_p2", (swig_wrapper_func) _wrap_a_triangle_p2, NULL},
11022  { SWIG_prefix "a_triangle_p3", (swig_wrapper_func) _wrap_a_triangle_p3, NULL},
11023  { SWIG_prefix "a_triangle_set", (swig_wrapper_func) _wrap_a_triangle_set, NULL},
11024  { SWIG_prefix "a_triangle_s1", (swig_wrapper_func) _wrap_a_triangle_s1, NULL},
11025  { SWIG_prefix "a_triangle_s2", (swig_wrapper_func) _wrap_a_triangle_s2, NULL},
11026  { SWIG_prefix "a_triangle_s3", (swig_wrapper_func) _wrap_a_triangle_s3, NULL},
11027  { SWIG_prefix "a_triangle_s", (swig_wrapper_func) _wrap_a_triangle_s, NULL},
11028  { SWIG_prefix "a_triangle_c", (swig_wrapper_func) _wrap_a_triangle_c, NULL},
11029  { SWIG_prefix "a_triangle_translate", (swig_wrapper_func) _wrap_a_triangle_translate, NULL},
11030  { SWIG_prefix "a_triangle_rotate", (swig_wrapper_func) _wrap_a_triangle_rotate, NULL},
11031  { SWIG_prefix "a_triangle_invert", (swig_wrapper_func) _wrap_a_triangle_invert, NULL},
11032  { SWIG_prefix "a_triangle_normal", (swig_wrapper_func) _wrap_a_triangle_normal, NULL},
11033  { SWIG_prefix "a_triangle_S", (swig_wrapper_func) _wrap_a_triangle_S, NULL},
11034  { SWIG_prefix "a_triangle_contains", (swig_wrapper_func) _wrap_a_triangle_contains, NULL},
11035  { SWIG_prefix "a_triangle_closest", (swig_wrapper_func) _wrap_a_triangle_closest, NULL},
11036  { SWIG_prefix "a_triangle_closestp", (swig_wrapper_func) _wrap_a_triangle_closestp, NULL},
11037  { SWIG_prefix "a_triangle_dist", (swig_wrapper_func) _wrap_a_triangle_dist, NULL},
11038  { SWIG_prefix "a_triangle_distp", (swig_wrapper_func) _wrap_a_triangle_distp, NULL},
11039  { SWIG_prefix "a_triangle_intersect", (swig_wrapper_func) _wrap_a_triangle_intersect, NULL},
11040  { SWIG_prefix "a_triangle_min_edge", (swig_wrapper_func) _wrap_a_triangle_min_edge, NULL},
11041  { SWIG_prefix "a_triangle_max_edge", (swig_wrapper_func) _wrap_a_triangle_max_edge, NULL},
11042  { SWIG_prefix "a_triangle_quality", (swig_wrapper_func) _wrap_a_triangle_quality, NULL},
11043  { SWIG_prefix "a_triangle_equals", (swig_wrapper_func) _wrap_a_triangle_equals, NULL},
11044  { SWIG_prefix "a_triangle_=", (swig_wrapper_func) _wrap_a_triangle_e___, NULL},
11045  { SWIG_prefix "delete_a_triangle", (swig_wrapper_func) _wrap_delete_a_triangle, NULL},
11047  { SWIG_prefix "new_a_circle", (swig_wrapper_func) _wrap_new_a_circle, NULL},
11048  { SWIG_prefix "a_circle_classname", (swig_wrapper_func) _wrap_a_circle_classname, NULL},
11049  { SWIG_prefix "a_circle_help", (swig_wrapper_func) _wrap_a_circle_help, NULL},
11050  { SWIG_prefix "a_circle_centre", (swig_wrapper_func) _wrap_a_circle_centre, NULL},
11051  { SWIG_prefix "a_circle_normal", (swig_wrapper_func) _wrap_a_circle_normal, NULL},
11052  { SWIG_prefix "a_circle_radius", (swig_wrapper_func) _wrap_a_circle_radius, NULL},
11053  { SWIG_prefix "a_circle_p3", (swig_wrapper_func) _wrap_a_circle_p3, NULL},
11054  { SWIG_prefix "a_circle_p2", (swig_wrapper_func) _wrap_a_circle_p2, NULL},
11055  { SWIG_prefix "a_circle_equals", (swig_wrapper_func) _wrap_a_circle_equals, NULL},
11056  { SWIG_prefix "a_circle_=", (swig_wrapper_func) _wrap_a_circle_e___, NULL},
11057  { SWIG_prefix "a_circle_length", (swig_wrapper_func) _wrap_a_circle_length, NULL},
11058  { SWIG_prefix "a_circle_area", (swig_wrapper_func) _wrap_a_circle_area, NULL},
11059  { SWIG_prefix "delete_a_circle", (swig_wrapper_func) _wrap_delete_a_circle, NULL},
11061  {0, 0, 0}
11062 };
11063 
11065  {0,0,0,0}
11066 };
11067 
11069  {0,0,0,0,0,0}
11070 };
11071 
11072 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
11073 
11074 static void *_p_a_pointTo_p_a_geom_base(void *x, int *SWIGUNUSEDPARM(newmemory)) {
11075  return (void *)((a_geom_base *) ((a_point *) x));
11076 }
11077 static void *_p_a_tetrahedronTo_p_a_geom_base(void *x, int *SWIGUNUSEDPARM(newmemory)) {
11078  return (void *)((a_geom_base *) ((a_tetrahedron *) x));
11079 }
11080 static void *_p_a_segmentTo_p_a_geom_base(void *x, int *SWIGUNUSEDPARM(newmemory)) {
11081  return (void *)((a_geom_base *) ((a_segment *) x));
11082 }
11083 static void *_p_a_triangleTo_p_a_geom_base(void *x, int *SWIGUNUSEDPARM(newmemory)) {
11084  return (void *)((a_geom_base *) ((a_triangle *) x));
11085 }
11086 static void *_p_a_circleTo_p_a_geom_base(void *x, int *SWIGUNUSEDPARM(newmemory)) {
11087  return (void *)((a_geom_base *) ((a_circle *) x));
11088 }
11089 static void *_p_a_point2To_p_a_geom_base(void *x, int *SWIGUNUSEDPARM(newmemory)) {
11090  return (void *)((a_geom_base *) ((a_point2 *) x));
11091 }
11092 static void *_p_a_planeTo_p_a_3dh(void *x, int *SWIGUNUSEDPARM(newmemory)) {
11093  return (void *)((a_3dh *) ((a_plane *) x));
11094 }
11095 static void *_p_a_pointTo_p_a_base(void *x, int *SWIGUNUSEDPARM(newmemory)) {
11096  return (void *)((a_base *) (a_geom_base *) ((a_point *) x));
11097 }
11098 static void *_p_a_tetrahedronTo_p_a_base(void *x, int *SWIGUNUSEDPARM(newmemory)) {
11099  return (void *)((a_base *) (a_geom_base *) ((a_tetrahedron *) x));
11100 }
11101 static void *_p_a_segmentTo_p_a_base(void *x, int *SWIGUNUSEDPARM(newmemory)) {
11102  return (void *)((a_base *) (a_geom_base *) ((a_segment *) x));
11103 }
11104 static void *_p_a_triangleTo_p_a_base(void *x, int *SWIGUNUSEDPARM(newmemory)) {
11105  return (void *)((a_base *) (a_geom_base *) ((a_triangle *) x));
11106 }
11107 static void *_p_a_circleTo_p_a_base(void *x, int *SWIGUNUSEDPARM(newmemory)) {
11108  return (void *)((a_base *) (a_geom_base *) ((a_circle *) x));
11109 }
11110 static void *_p_a_geom_baseTo_p_a_base(void *x, int *SWIGUNUSEDPARM(newmemory)) {
11111  return (void *)((a_base *) ((a_geom_base *) x));
11112 }
11113 static void *_p_a_point2To_p_a_base(void *x, int *SWIGUNUSEDPARM(newmemory)) {
11114  return (void *)((a_base *) (a_geom_base *) ((a_point2 *) x));
11115 }
11116 static swig_type_info _swigt__p_a_3dh = {"_p_a_3dh", "a_3dh *", 0, 0, (void*)&_wrap_class_a_3dh, 0};
11117 static swig_type_info _swigt__p_a_base = {"_p_a_base", "a_base *", 0, 0, (void*)&_wrap_class_a_base, 0};
11118 static swig_type_info _swigt__p_a_circle = {"_p_a_circle", "a_circle *", 0, 0, (void*)&_wrap_class_a_circle, 0};
11119 static swig_type_info _swigt__p_a_coord = {"_p_a_coord", "a_coord *", 0, 0, (void*)0, 0};
11120 static swig_type_info _swigt__p_a_geom_base = {"_p_a_geom_base", "a_geom_base *", 0, 0, (void*)&_wrap_class_a_geom_base, 0};
11121 static swig_type_info _swigt__p_a_mat = {"_p_a_mat", "a_mat *", 0, 0, (void*)0, 0};
11122 static swig_type_info _swigt__p_a_plane = {"_p_a_plane", "a_plane *", 0, 0, (void*)&_wrap_class_a_plane, 0};
11123 static swig_type_info _swigt__p_a_point = {"_p_a_point", "a_point *", 0, 0, (void*)&_wrap_class_a_point, 0};
11124 static swig_type_info _swigt__p_a_point2 = {"_p_a_point2", "a_point2 *", 0, 0, (void*)&_wrap_class_a_point2, 0};
11125 static swig_type_info _swigt__p_a_segment = {"_p_a_segment", "a_segment *", 0, 0, (void*)&_wrap_class_a_segment, 0};
11126 static swig_type_info _swigt__p_a_segment__denomin_error = {"_p_a_segment__denomin_error", "a_segment::denomin_error *", 0, 0, (void*)0, 0};
11127 static swig_type_info _swigt__p_a_tetrahedron = {"_p_a_tetrahedron", "a_tetrahedron *", 0, 0, (void*)&_wrap_class_a_tetrahedron, 0};
11128 static swig_type_info _swigt__p_a_triangle = {"_p_a_triangle", "a_triangle *", 0, 0, (void*)&_wrap_class_a_triangle, 0};
11129 static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
11130 static swig_type_info _swigt__p_double = {"_p_double", "double *", 0, 0, (void*)0, 0};
11131 static swig_type_info _swigt__p_std__istream = {"_p_std__istream", "std::istream *", 0, 0, (void*)0, 0};
11132 static swig_type_info _swigt__p_std__ostream = {"_p_std__ostream", "std::ostream *", 0, 0, (void*)0, 0};
11133 
11135  &_swigt__p_a_3dh,
11140  &_swigt__p_a_mat,
11148  &_swigt__p_char,
11152 };
11153 
11156 static swig_cast_info _swigc__p_a_circle[] = { {&_swigt__p_a_circle, 0, 0, 0},{0, 0, 0, 0}};
11157 static swig_cast_info _swigc__p_a_coord[] = { {&_swigt__p_a_coord, 0, 0, 0},{0, 0, 0, 0}};
11159 static swig_cast_info _swigc__p_a_mat[] = { {&_swigt__p_a_mat, 0, 0, 0},{0, 0, 0, 0}};
11160 static swig_cast_info _swigc__p_a_plane[] = { {&_swigt__p_a_plane, 0, 0, 0},{0, 0, 0, 0}};
11161 static swig_cast_info _swigc__p_a_point[] = { {&_swigt__p_a_point, 0, 0, 0},{0, 0, 0, 0}};
11162 static swig_cast_info _swigc__p_a_point2[] = { {&_swigt__p_a_point2, 0, 0, 0},{0, 0, 0, 0}};
11163 static swig_cast_info _swigc__p_a_segment[] = { {&_swigt__p_a_segment, 0, 0, 0},{0, 0, 0, 0}};
11165 static swig_cast_info _swigc__p_a_tetrahedron[] = { {&_swigt__p_a_tetrahedron, 0, 0, 0},{0, 0, 0, 0}};
11166 static swig_cast_info _swigc__p_a_triangle[] = { {&_swigt__p_a_triangle, 0, 0, 0},{0, 0, 0, 0}};
11167 static swig_cast_info _swigc__p_char[] = { {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}};
11168 static swig_cast_info _swigc__p_double[] = { {&_swigt__p_double, 0, 0, 0},{0, 0, 0, 0}};
11169 static swig_cast_info _swigc__p_std__istream[] = { {&_swigt__p_std__istream, 0, 0, 0},{0, 0, 0, 0}};
11170 static swig_cast_info _swigc__p_std__ostream[] = { {&_swigt__p_std__ostream, 0, 0, 0},{0, 0, 0, 0}};
11171 
11190 };
11191 
11192 
11193 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */
11194 
11195 #ifdef __cplusplus
11196 }
11197 #endif
11198 /* -----------------------------------------------------------------------------
11199  * Type initialization:
11200  * This problem is tough by the requirement that no dynamic
11201  * memory is used. Also, since swig_type_info structures store pointers to
11202  * swig_cast_info structures and swig_cast_info structures store pointers back
11203  * to swig_type_info structures, we need some lookup code at initialization.
11204  * The idea is that swig generates all the structures that are needed.
11205  * The runtime then collects these partially filled structures.
11206  * The SWIG_InitializeModule function takes these initial arrays out of
11207  * swig_module, and does all the lookup, filling in the swig_module.types
11208  * array with the correct data and linking the correct swig_cast_info
11209  * structures together.
11210  *
11211  * The generated swig_type_info structures are assigned statically to an initial
11212  * array. We just loop through that array, and handle each type individually.
11213  * First we lookup if this type has been already loaded, and if so, use the
11214  * loaded structure instead of the generated one. Then we have to fill in the
11215  * cast linked list. The cast data is initially stored in something like a
11216  * two-dimensional array. Each row corresponds to a type (there are the same
11217  * number of rows as there are in the swig_type_initial array). Each entry in
11218  * a column is one of the swig_cast_info structures for that type.
11219  * The cast_initial array is actually an array of arrays, because each row has
11220  * a variable number of columns. So to actually build the cast linked list,
11221  * we find the array of casts associated with the type, and loop through it
11222  * adding the casts to the list. The one last trick we need to do is making
11223  * sure the type pointer in the swig_cast_info struct is correct.
11224  *
11225  * First off, we lookup the cast->type name to see if it is already loaded.
11226  * There are three cases to handle:
11227  * 1) If the cast->type has already been loaded AND the type we are adding
11228  * casting info to has not been loaded (it is in this module), THEN we
11229  * replace the cast->type pointer with the type pointer that has already
11230  * been loaded.
11231  * 2) If BOTH types (the one we are adding casting info to, and the
11232  * cast->type) are loaded, THEN the cast info has already been loaded by
11233  * the previous module so we just ignore it.
11234  * 3) Finally, if cast->type has not already been loaded, then we add that
11235  * swig_cast_info to the linked list (because the cast->type) pointer will
11236  * be correct.
11237  * ----------------------------------------------------------------------------- */
11238 
11239 #ifdef __cplusplus
11240 extern "C" {
11241 #if 0
11242 } /* c-mode */
11243 #endif
11244 #endif
11245 
11246 #if 0
11247 #define SWIGRUNTIME_DEBUG
11248 #endif
11249 
11250 
11251 SWIGRUNTIME void
11252 SWIG_InitializeModule(void *clientdata) {
11253  size_t i;
11254  swig_module_info *module_head, *iter;
11255  int init;
11256 
11257  /* check to see if the circular list has been setup, if not, set it up */
11258  if (swig_module.next==0) {
11259  /* Initialize the swig_module */
11263  init = 1;
11264  } else {
11265  init = 0;
11266  }
11267 
11268  /* Try and load any already created modules */
11269  module_head = SWIG_GetModule(clientdata);
11270  if (!module_head) {
11271  /* This is the first module loaded for this interpreter */
11272  /* so set the swig module into the interpreter */
11273  SWIG_SetModule(clientdata, &swig_module);
11274  } else {
11275  /* the interpreter has loaded a SWIG module, but has it loaded this one? */
11276  iter=module_head;
11277  do {
11278  if (iter==&swig_module) {
11279  /* Our module is already in the list, so there's nothing more to do. */
11280  return;
11281  }
11282  iter=iter->next;
11283  } while (iter!= module_head);
11284 
11285  /* otherwise we must add our module into the list */
11286  swig_module.next = module_head->next;
11287  module_head->next = &swig_module;
11288  }
11289 
11290  /* When multiple interpreters are used, a module could have already been initialized in
11291  a different interpreter, but not yet have a pointer in this interpreter.
11292  In this case, we do not want to continue adding types... everything should be
11293  set up already */
11294  if (init == 0) return;
11295 
11296  /* Now work on filling in swig_module.types */
11297 #ifdef SWIGRUNTIME_DEBUG
11298  printf("SWIG_InitializeModule: size %lu\n", (unsigned long)swig_module.size);
11299 #endif
11300  for (i = 0; i < swig_module.size; ++i) {
11301  swig_type_info *type = 0;
11302  swig_type_info *ret;
11303  swig_cast_info *cast;
11304 
11305 #ifdef SWIGRUNTIME_DEBUG
11306  printf("SWIG_InitializeModule: type %lu %s\n", (unsigned long)i, swig_module.type_initial[i]->name);
11307 #endif
11308 
11309  /* if there is another module already loaded */
11310  if (swig_module.next != &swig_module) {
11312  }
11313  if (type) {
11314  /* Overwrite clientdata field */
11315 #ifdef SWIGRUNTIME_DEBUG
11316  printf("SWIG_InitializeModule: found type %s\n", type->name);
11317 #endif
11320 #ifdef SWIGRUNTIME_DEBUG
11321  printf("SWIG_InitializeModule: found and overwrite type %s \n", type->name);
11322 #endif
11323  }
11324  } else {
11325  type = swig_module.type_initial[i];
11326  }
11327 
11328  /* Insert casting types */
11329  cast = swig_module.cast_initial[i];
11330  while (cast->type) {
11331  /* Don't need to add information already in the list */
11332  ret = 0;
11333 #ifdef SWIGRUNTIME_DEBUG
11334  printf("SWIG_InitializeModule: look cast %s\n", cast->type->name);
11335 #endif
11336  if (swig_module.next != &swig_module) {
11338 #ifdef SWIGRUNTIME_DEBUG
11339  if (ret) printf("SWIG_InitializeModule: found cast %s\n", ret->name);
11340 #endif
11341  }
11342  if (ret) {
11343  if (type == swig_module.type_initial[i]) {
11344 #ifdef SWIGRUNTIME_DEBUG
11345  printf("SWIG_InitializeModule: skip old type %s\n", ret->name);
11346 #endif
11347  cast->type = ret;
11348  ret = 0;
11349  } else {
11350  /* Check for casting already in the list */
11351  swig_cast_info *ocast = SWIG_TypeCheck(ret->name, type);
11352 #ifdef SWIGRUNTIME_DEBUG
11353  if (ocast) printf("SWIG_InitializeModule: skip old cast %s\n", ret->name);
11354 #endif
11355  if (!ocast) ret = 0;
11356  }
11357  }
11358 
11359  if (!ret) {
11360 #ifdef SWIGRUNTIME_DEBUG
11361  printf("SWIG_InitializeModule: adding cast %s\n", cast->type->name);
11362 #endif
11363  if (type->cast) {
11364  type->cast->prev = cast;
11365  cast->next = type->cast;
11366  }
11367  type->cast = cast;
11368  }
11369  cast++;
11370  }
11371  /* Set entry in modules->types array equal to the type */
11372  swig_module.types[i] = type;
11373  }
11374  swig_module.types[i] = 0;
11375 
11376 #ifdef SWIGRUNTIME_DEBUG
11377  printf("**** SWIG_InitializeModule: Cast List ******\n");
11378  for (i = 0; i < swig_module.size; ++i) {
11379  int j = 0;
11381  printf("SWIG_InitializeModule: type %lu %s\n", (unsigned long)i, swig_module.type_initial[i]->name);
11382  while (cast->type) {
11383  printf("SWIG_InitializeModule: cast type %s\n", cast->type->name);
11384  cast++;
11385  ++j;
11386  }
11387  printf("---- Total casts: %d\n",j);
11388  }
11389  printf("**** SWIG_InitializeModule: Cast List ******\n");
11390 #endif
11391 }
11392 
11393 /* This function will propagate the clientdata field of type to
11394 * any new swig_type_info structures that have been added into the list
11395 * of equivalent types. It is like calling
11396 * SWIG_TypeClientData(type, clientdata) a second time.
11397 */
11398 SWIGRUNTIME void
11400  size_t i;
11401  swig_cast_info *equiv;
11402  static int init_run = 0;
11403 
11404  if (init_run) return;
11405  init_run = 1;
11406 
11407  for (i = 0; i < swig_module.size; i++) {
11408  if (swig_module.types[i]->clientdata) {
11409  equiv = swig_module.types[i]->cast;
11410  while (equiv) {
11411  if (!equiv->converter) {
11412  if (equiv->type && !equiv->type->clientdata)
11414  }
11415  equiv = equiv->next;
11416  }
11417  }
11418  }
11419 }
11420 
11421 #ifdef __cplusplus
11422 #if 0
11423 {
11424  /* c-mode */
11425 #endif
11426 }
11427 #endif
11428 
11429 
11430 #ifdef __cplusplus
11431 extern "C" {
11432 #endif
11433 
11434  /* -----------------------------------------------------------------------------
11435  * constants/methods manipulation
11436  * ----------------------------------------------------------------------------- */
11437 
11438  /* Install Constants */
11439 
11440  SWIGINTERN void
11441  SWIG_Tcl_InstallConstants(Tcl_Interp *interp, swig_const_info constants[]) {
11442  size_t i;
11443  Tcl_Obj *obj;
11444 
11445  if (!swigconstTableinit) {
11446  Tcl_InitHashTable(&swigconstTable, TCL_STRING_KEYS);
11447  swigconstTableinit = 1;
11448  }
11449  for (i = 0; constants[i].type; i++) {
11450  switch(constants[i].type) {
11451  case SWIG_TCL_POINTER:
11452  obj = SWIG_NewPointerObj(constants[i].pvalue, *(constants[i]).ptype,0);
11453  break;
11454  case SWIG_TCL_BINARY:
11455  obj = SWIG_NewPackedObj(constants[i].pvalue, constants[i].lvalue, *(constants[i].ptype));
11456  break;
11457  default:
11458  obj = 0;
11459  break;
11460  }
11461  if (obj) {
11462  SWIG_Tcl_SetConstantObj(interp, constants[i].name, obj);
11463  }
11464  }
11465  }
11466 
11467  /* Create fast method lookup tables */
11468 
11469  SWIGINTERN void
11471  size_t i;
11472 
11473  for (i = 0; i < swig_module.size; ++i) {
11475  if (type->clientdata) {
11476  swig_class* klass = (swig_class*) type->clientdata;
11477  swig_method* meth;
11478  Tcl_InitHashTable(&(klass->hashtable), TCL_STRING_KEYS);
11479  for (meth = klass->methods; meth && meth->name; ++meth) {
11480  int newEntry;
11481  Tcl_HashEntry* hashentry = Tcl_CreateHashEntry(&(klass->hashtable), meth->name, &newEntry);
11482  Tcl_SetHashValue(hashentry, (ClientData)meth->method);
11483  }
11484  }
11485  }
11486  }
11487 
11488 #ifdef __cplusplus
11489 }
11490 #endif
11491 
11492 /* -----------------------------------------------------------------------------*
11493  * Partial Init method
11494  * -----------------------------------------------------------------------------*/
11495 
11496 SWIGEXPORT int SWIG_init(Tcl_Interp *interp) {
11497  size_t i;
11498  if (interp == 0) return TCL_ERROR;
11499 #ifdef USE_TCL_STUBS
11500  /* (char*) cast is required to avoid compiler warning/error for Tcl < 8.4. */
11501  if (Tcl_InitStubs(interp, (char*)SWIG_TCL_STUBS_VERSION, 0) == NULL) {
11502  return TCL_ERROR;
11503  }
11504 #endif
11505 #ifdef USE_TK_STUBS
11506  /* (char*) cast is required to avoid compiler warning/error. */
11507  if (Tk_InitStubs(interp, (char*)SWIG_TCL_STUBS_VERSION, 0) == NULL) {
11508  return TCL_ERROR;
11509  }
11510 #endif
11511 
11512  Tcl_PkgProvide(interp, (char*)SWIG_name, (char*)SWIG_version);
11513 
11514 #ifdef SWIG_namespace
11515  Tcl_Eval(interp, "namespace eval " SWIG_namespace " { }");
11516 #endif
11517 
11518  SWIG_InitializeModule((void *) interp);
11520 
11521  for (i = 0; swig_commands[i].name; i++) {
11522  Tcl_CreateObjCommand(interp, (char *) swig_commands[i].name, (swig_wrapper_func) swig_commands[i].wrapper,
11523  swig_commands[i].clientdata, NULL);
11524  }
11525  for (i = 0; swig_variables[i].name; i++) {
11526  Tcl_SetVar(interp, (char *) swig_variables[i].name, (char *) "", TCL_GLOBAL_ONLY);
11527  Tcl_TraceVar(interp, (char *) swig_variables[i].name, TCL_TRACE_READS | TCL_GLOBAL_ONLY,
11528  (Tcl_VarTraceProc *) swig_variables[i].get, (ClientData) swig_variables[i].addr);
11529  Tcl_TraceVar(interp, (char *) swig_variables[i].name, TCL_TRACE_WRITES | TCL_GLOBAL_ONLY,
11530  (Tcl_VarTraceProc *) swig_variables[i].set, (ClientData) swig_variables[i].addr);
11531  }
11532 
11535 
11536 
11537 
11538  printf("Points&forces a_geom module.\n");
11539  printf("Type a_geom_base_help for an introduction.\n");
11540 
11541  SWIG_Tcl_SetConstantObj(interp, "pi", SWIG_From_double(static_cast< double >(atan(1.)*4.)));
11542  return TCL_OK;
11543 }
11544 SWIGEXPORT int A_geom_SafeInit(Tcl_Interp *interp) {
11545  return SWIG_init(interp);
11546 }
11547 
static const char * swig_a_point_base_names[]
SWIGINTERN int _wrap_angle(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_quality(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME char * SWIG_PackData(char *c, void *ptr, size_t sz)
SWIGINTERN int _wrap_a_circle_length(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_equals(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGEXPORT int A_geom_SafeInit(Tcl_Interp *interp)
static swig_var_info swig_variables[]
static void * _p_a_point2To_p_a_base(void *x, int *SWIGUNUSEDPARM(newmemory))
SWIGINTERN int _wrap_a_point2_negate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_circle_classname(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_3dh_Z__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_x(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static const char * swig_a_circle_base_names[]
SWIGINTERNINLINE Tcl_Obj * SWIG_From_std_string(const std::string &s)
SWIGINTERN int _wrap_a_segment_c(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_delete_a_tetrahedron(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_cast_info * swig_cast_initial[]
SWIGINTERN int _wrap_a_triangle_p3__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_normal(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point2_x(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME int SWIG_Tcl_ObjectConstructor(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_s1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_tetrahedron_p4__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_delete_a_point2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_tetrahedron_equals(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_segment_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static const char * swig_a_3dh_base_names[]
SWIGINTERN int _wrap_new_a_geom_base(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_rotate__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_segment__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_cast_info _swigc__p_a_coord[]
SWIGRUNTIME char * SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz)
SWIGINTERN int _wrap_a_point2_e___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_segment_distl__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_plane_d0__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_circle_centre(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_3dh_T__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_MakePtr(c, ptr, ty, flags)
static swig_attribute swig_a_point2_attributes[]
SWIGINTERN int _wrap_a_point2_rotate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_point__SWIG_2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_3dh__SWIG_5(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_cast_info _swigc__p_a_3dh[]
SWIGINTERN void SWIG_Tcl_InstallConstants(Tcl_Interp *interp, swig_const_info constants[])
#define SWIGTYPE_p_a_triangle
static swig_method swig_a_circle_methods[]
#define SWIG_TypeQuery(name)
SWIGINTERN int _wrap_a_geom_base_classname(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_p1__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point2_norm(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_POINTER_OWN
#define SWIGTYPE_p_a_point2
static swig_const_info swig_constants[]
SWIGINTERN void swig_delete_a_circle(void *obj)
SWIGINTERN int _wrap_a_point2_y(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN a_point * new_a_point__SWIG_4(std::string const s)
SWIGINTERN int _wrap_a_segment_closest(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_SyntaxError
static swig_class * swig_a_plane_bases[]
static swig_method swig_a_segment_methods[]
SWIGINTERN int _wrap_delete_a_triangle(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_ConvertPtr(oc, ptr, ty, flags)
static swig_method swig_a_geom_base_methods[]
static const char * swig_a_tetrahedron_base_names[]
#define SWIG_CheckState(r)
static swig_cast_info _swigc__p_a_circle[]
static void * _p_a_pointTo_p_a_base(void *x, int *SWIGUNUSEDPARM(newmemory))
SWIGINTERN int _wrap_a_point_y__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_method swig_a_point2_methods[]
SWIGINTERN int _wrap_a_tetrahedron_V(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point2_set__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME void SWIG_Tcl_Acquire(void *ptr)
SWIGRUNTIME int SWIG_TypeEquiv(const char *nb, const char *tb)
SWIGINTERN std::string a_base_print(a_base *self)
SWIGINTERN int _wrap_a_point2_set__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static void * _p_a_geom_baseTo_p_a_base(void *x, int *SWIGUNUSEDPARM(newmemory))
SWIGINTERN int _wrap_r2d(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_dist__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_cast_info _swigc__p_a_segment[]
#define SWIG_BUFFER_SIZE
struct swig_instance swig_instance
#define SWIG_TypeError
static swig_type_info _swigt__p_a_circle
SWIGINTERN int _wrap_a_point_set_cylindrical(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_cast_info _swigc__p_double[]
SWIGINTERN int _wrap_a_point_norm2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIGTYPE_p_a_segment__denomin_error
SWIGINTERNINLINE void SWIG_Tcl_AddErrorMsg(Tcl_Interp *interp, const char *mesg)
SWIGINTERN int _wrap_a_segment_p2__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN void SWIG_Tcl_SetErrorMsg(Tcl_Interp *interp, const char *ctype, const char *mesg)
SWIGINTERN int _wrap_a_tetrahedron_p(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_class _wrap_class_a_3dh
struct swig_cast_info swig_cast_info
SWIGINTERN int _wrap_new_a_segment(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_init
SWIGINTERN int _wrap_new_a_3dh__SWIG_2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_circle_e___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME Tcl_Obj * SWIG_Tcl_NewPackedObj(void *ptr, int sz, swig_type_info *type)
static const char * swig_a_point2_base_names[]
SWIGRUNTIME int SWIG_Tcl_MethodCommand(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST _objv[])
SWIGRUNTIME int SWIG_TypeNameComp(const char *f1, const char *l1, const char *f2, const char *l2)
SWIGINTERN int _wrap_a_circle_radius__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_average__SWIG_2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_3dh__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN a_point2 & a_point2_divide(a_point2 *self, double v)
SWIGINTERN int _wrap_a_point_rotate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_delete_a_point(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_average_rot(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIMEINLINE void * SWIG_TypeCast(swig_cast_info *ty, void *ptr, int *newmemory)
SWIGINTERN void swig_delete_a_3dh(void *obj)
static swig_cast_info _swigc__p_a_plane[]
#define SWIG_RuntimeError
SWIGINTERN int _wrap_a_point_z__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_GetArgs
static swig_type_info _swigt__p_a_geom_base
SWIGINTERN int _wrap_a_base_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN void swig_delete_a_triangle(void *obj)
SWIGINTERN int _wrap_a_point2_y__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_tetrahedron_e___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_tetrahedron_p1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_point2__SWIG_3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_cross(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN std::string a_3dh_print(a_3dh *self)
static swig_command_info swig_commands[]
SWIGINTERN int _wrap_a_circle_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN a_point & a_point_multiply(a_point *self, double v)
static const char * swig_a_triangle_base_names[]
SWIGINTERN int _wrap_a_point2_dist(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN std::string a_plane_print(a_plane *self)
#define SWIGTYPE_p_a_segment
SWIGINTERN int _wrap_a_plane_dist(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_3dh_X__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_attribute swig_a_triangle_attributes[]
SWIGINTERN int _wrap_a_base_small__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_circle_normal__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_3dh_T(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_3dh_X__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
int(* swig_wrapper_func)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST[])
SWIGINTERN const char * SWIG_Tcl_ErrorType(int code)
SWIGINTERN int _wrap_a_triangle_max_edge(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME const char * SWIG_TypePrettyName(const swig_type_info *type)
SWIGINTERN int _wrap_a_point_set(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_class _wrap_class_a_plane
SWIGINTERN int _wrap_new_a_point2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_delete_a_circle(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_method swig_a_base_methods[]
#define SWIGRUNTIME
SWIGINTERN int _wrap_a_segment_dist(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_type_info _swigt__p_a_mat
SWIGINTERN int _wrap_angle__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_delete_a_segment(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIGTYPE_p_a_tetrahedron
SWIGINTERN int _wrap_a_circle_centre__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int SWIG_AsCharPtrAndSize(Tcl_Obj *obj, char **cptr, size_t *psize, int *alloc)
SWIGINTERN int _wrap_a_point_set_spherical(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_attribute swig_a_plane_attributes[]
#define SWIG_version
#define SWIG_RUNTIME_VERSION
SWIGINTERN int _wrap_a_tetrahedron_p3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_dist(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN void SWIG_Tcl_SetErrorObj(Tcl_Interp *interp, const char *ctype, Tcl_Obj *obj)
static swig_cast_info _swigc__p_a_segment__denomin_error[]
#define SWIG_OLDOBJ
SWIGRUNTIME void SWIG_TypeClientData(swig_type_info *ti, void *clientdata)
static Tcl_HashTable swigconstTable
#define SWIG_MethodCommand
#define SWIG_ValueError
SWIGRUNTIME int SWIG_Tcl_GetArgs(Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[], const char *fmt,...)
static swig_attribute swig_a_segment_attributes[]
SWIGINTERN int _wrap_a_segment_equals(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_3dh_set__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_type_info _swigt__p_a_segment__denomin_error
#define SWIG_AddCast(r)
SWIGINTERN a_point2 & a_point2_multiply(a_point2 *self, double v)
SWIGINTERN int _wrap_a_point_y__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_multiply(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_cast_info _swigc__p_std__ostream[]
SWIGINTERN int _wrap_d2r(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIGTYPE_p_a_plane
static swig_method swig_a_3dh_methods[]
SWIGINTERN int _wrap_a_3dh_Y__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_IsNewObj(r)
SWIGINTERN int _wrap_a_tetrahedron_p4(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_circle_centre(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_segment_p2__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static void * _p_a_triangleTo_p_a_geom_base(void *x, int *SWIGUNUSEDPARM(newmemory))
std::string puts(const a_point &p)
#define SWIGTYPE_p_a_geom_base
#define SWIGTYPE_p_a_mat
SWIGINTERN int _wrap_new_a_point(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_class _wrap_class_a_triangle
#define SWIG_exception_fail(code, msg)
SWIGINTERN int _wrap_a_plane_contains(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_3dh_set__SWIG_2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_base_small(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_p3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_cast_info _swigc__p_std__istream[]
SWIGINTERN int _wrap_a_segment_project(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_type_info _swigt__p_std__istream
SWIGINTERN int _wrap_a_plane_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_attribute swig_a_tetrahedron_attributes[]
SWIGRUNTIME swig_type_info * SWIG_TypeQueryModule(swig_module_info *start, swig_module_info *end, const char *name)
static swig_cast_info _swigc__p_a_base[]
SWIGINTERN int _wrap_a_triangle_closest(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_average__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_AttributeError
SWIGINTERN int _wrap_a_segment_dist__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_method swig_a_point_methods[]
SWIGINTERN int _wrap_a_point_m___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_plane_intersect__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_divide(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_type_info _swigt__p_a_3dh
static swig_module_info swig_module
SWIGINTERN int _wrap_a_base_small__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_cast_info _swigc__p_a_tetrahedron[]
SWIGINTERN int _wrap_a_point_negate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_tetrahedron_write(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_invert(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static void * _p_a_pointTo_p_a_geom_base(void *x, int *SWIGUNUSEDPARM(newmemory))
static swig_class _wrap_class_a_tetrahedron
SWIGINTERN int _wrap_dist(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_circle_normal(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_attribute swig_a_circle_attributes[]
static swig_type_info _swigt__p_double
SWIGINTERN int _wrap_a_point_max(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_3dh__SWIG_4(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_SetModule(clientdata, pointer)
SWIGINTERN int _wrap_a_tetrahedron_contains(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_point__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIMEINLINE const char * SWIG_TypeName(const swig_type_info *ty)
SWIGINTERN int _wrap_a_3dh_Y(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static void * _p_a_point2To_p_a_geom_base(void *x, int *SWIGUNUSEDPARM(newmemory))
SWIGINTERN int _wrap_a_point_subtract(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_type_info _swigt__p_a_point2
static void * _p_a_triangleTo_p_a_base(void *x, int *SWIGUNUSEDPARM(newmemory))
SWIGINTERN int _wrap_new_a_point2__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIGUNUSEDPARM(p)
SWIGINTERN int _wrap_a_point2_set(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_rotate__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point2_divide(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_base(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
struct swig_class swig_class
#define SWIG_as_voidptr(a)
SWIGINTERN int _wrap_a_tetrahedron_classname(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_3dh_x(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_p3__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIGUNUSED
SWIGINTERN int _wrap_a_triangle_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN void swig_delete_a_tetrahedron(void *obj)
static const char * swig_a_segment_base_names[]
static swig_class _wrap_class_a_segment
SWIGINTERN void swig_delete_a_base(void *obj)
SWIGINTERN void swig_delete_a_point2(void *obj)
SWIGINTERN int _wrap_new_a_tetrahedron(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME void SWIG_TypeNewClientData(swig_type_info *ti, void *clientdata)
SWIGINTERN int _wrap_a_point_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME void SWIG_Tcl_SetModule(Tcl_Interp *interp, swig_module_info *module)
SWIGINTERN int _wrap_new_a_segment__SWIG_2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME int SWIG_TypeCmp(const char *nb, const char *tb)
SWIGINTERN void swig_delete_a_segment(void *obj)
SWIGRUNTIMEINLINE int SWIG_Tcl_ConvertPtr(Tcl_Interp *interp, Tcl_Obj *oc, void **ptr, swig_type_info *ty, int flags)
static swig_method swig_a_tetrahedron_methods[]
static swig_type_info _swigt__p_a_coord
static swig_class _wrap_class_a_circle
struct swig_const_info swig_const_info
SWIGINTERN int _wrap_a_triangle_dist(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_3dh__SWIG_3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_norm(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_y(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_sumsq(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_point2__SWIG_4(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_tetrahedron_read(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point2_sumsq(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_class * swig_a_geom_base_bases[]
static void * _p_a_circleTo_p_a_base(void *x, int *SWIGUNUSEDPARM(newmemory))
SWIGINTERN int _wrap_a_circle_p3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN a_point2 & a_point2_negate(a_point2 *self)
SWIGINTERN int _wrap_a_point2_subtract(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_tetrahedron_rotate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME int SWIG_Tcl_Thisown(void *ptr)
static swig_type_info _swigt__p_a_plane
SWIGINTERN int _wrap_a_point2_y__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME void SWIG_InitializeModule(void *clientdata)
SWIGINTERN int _wrap_a_plane_d0__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_circle_radius(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME const char * SWIG_UnpackData(const char *c, void *ptr, size_t sz)
static swig_type_info _swigt__p_a_point
SWIGINTERN void SWIG_Tcl_SetConstantObj(Tcl_Interp *interp, const char *name, Tcl_Obj *obj)
SWIGINTERN int _wrap_new_a_triangle__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_cast_info _swigc__p_a_geom_base[]
SWIGINTERN int _wrap_a_3dh_y(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIMEINLINE Tcl_Obj * SWIG_Tcl_NewPointerObj(void *ptr, swig_type_info *type, int flags)
SWIGINTERN int _wrap_new_a_point__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_segment_closestl(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
double r2d(const double r)
SWIGINTERN int _wrap_a_point2_s___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_average(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_cast_info _swigc__p_char[]
static swig_cast_info _swigc__p_a_point2[]
SWIGINTERN int _wrap_a_circle_p2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_tetrahedron__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME swig_cast_info * SWIG_TypeCheckStruct(swig_type_info *from, swig_type_info *ty)
static void * _p_a_planeTo_p_a_3dh(void *x, int *SWIGUNUSEDPARM(newmemory))
SWIGINTERN int _wrap_a_base_print(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_plane_intersect(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static void * _p_a_segmentTo_p_a_geom_base(void *x, int *SWIGUNUSEDPARM(newmemory))
SWIGINTERN int _wrap_a_plane_n(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIGINTERN
SWIGINTERN a_point2 * new_a_point2__SWIG_4(std::string const s)
SWIGINTERN int _wrap_a_tetrahedron_S(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_average_rot__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_point__SWIG_3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static const char * swig_a_plane_base_names[]
SWIGINTERN int _wrap_a_segment_p1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_From_double
SWIGINTERN int _wrap_a_point2_x__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static const char * swig_a_geom_base_base_names[]
#define SWIGTYPE_p_a_coord
SWIGINTERN int _wrap_average__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_ArgError(r)
SWIGINTERN int _wrap_a_tetrahedron_p2__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_set(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_triangle(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_NewPointerObj(ptr, type, flags)
SWIGINTERN int _wrap_new_a_point2__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIGTYPE_p_a_circle
SWIGINTERN int _wrap_a_triangle_distp(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_z(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_Thisown(ptr)
SWIGRUNTIME const char * SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name)
SWIGINTERN int _wrap_a_plane_d0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_3dh(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_3dh_set__SWIG_3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
void *(* swig_converter_func)(void *, int *)
#define SWIG_POINTER_NO_NULL
SWIGINTERN int _wrap_a_triangle_e___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_s2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_tetrahedron_p1__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_average_rot__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_type_info _swigt__p_std__ostream
static swig_class _wrap_class_a_geom_base
SWIGINTERN int _wrap_a_point_x__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_IOError
SWIGRUNTIME Tcl_Obj * SWIG_Tcl_NewInstanceObj(Tcl_Interp *interp, void *thisvalue, swig_type_info *type, int flags)
SWIGINTERN int _wrap_a_geom_base_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_NullReferenceError
SWIGINTERN int _wrap_a_point2_x__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_angle__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_delete_a_base(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_add(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_p2__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_3dh_print(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_tetrahedron_s(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_POINTER_DISOWN
struct swig_type_info swig_type_info
SWIGINTERN int _wrap_a_triangle_closestp(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_type_info _swigt__p_a_tetrahedron
SWIGINTERN int _wrap_cross(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_3dh_Z(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_3dh_Z__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_type_info _swigt__p_a_triangle
#define SWIG_IsTmpObj(r)
SWIGINTERN int _wrap_a_tetrahedron_p2__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point2_multiply(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_class * swig_a_segment_bases[]
SWIGRUNTIME char * SWIG_Tcl_PointerTypeFromString(char *c)
static swig_cast_info _swigc__p_a_triangle[]
SWIGINTERN int _wrap_a_point2_normalise(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_attribute swig_a_3dh_attributes[]
SWIGINTERN int _wrap_new_a_segment__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_tetrahedron_p1__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_From_bool
SWIGINTERN void swig_delete_a_plane(void *obj)
static swig_attribute swig_a_geom_base_attributes[]
SWIGINTERN int _wrap_a_triangle_s3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_NEWOBJ
static swig_class _wrap_class_a_point
SWIGRUNTIME int SWIG_Tcl_Disown(void *ptr)
#define SWIG_TMPOBJ
#define SWIG_ObjectDelete
SWIGINTERN int _wrap_a_plane_closest(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_norm1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_min_edge(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_3dh_point(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_NewPackedObj(ptr, sz, type)
static swig_method swig_a_triangle_methods[]
SWIGINTERN int _wrap_a_tetrahedron_set(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_normI(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_tetrahedron__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_delete_a_3dh(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static void * _p_a_tetrahedronTo_p_a_geom_base(void *x, int *SWIGUNUSEDPARM(newmemory))
#define SWIG_GetModule(clientdata)
SWIGINTERN int _wrap_a_segment_p1__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_circle_area(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static void * _p_a_tetrahedronTo_p_a_base(void *x, int *SWIGUNUSEDPARM(newmemory))
SWIGINTERN int _wrap_a_triangle_p1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_c(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_fail
SWIGINTERN int _wrap_a_3dh_T__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_new_a_circle(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME void SWIG_PropagateClientData(void)
static swig_type_info * swig_types[18]
SWIGRUNTIME swig_cast_info * SWIG_TypeCheck(const char *c, swig_type_info *ty)
static swig_cast_info _swigc__p_a_point[]
SWIGINTERN Tcl_Obj * SWIG_Tcl_GetConstantObj(const char *key)
SWIGINTERN int _wrap_a_plane_print(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_S(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIGTYPE_p_a_point
SWIGINTERN int _wrap_a_circle_equals(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point_a___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERNINLINE Tcl_Obj * SWIG_FromCharPtrAndSize(const char *carray, size_t size)
static swig_class * swig_a_triangle_bases[]
SWIGINTERN a_point & a_point_negate(a_point *self)
SWIGINTERN int _wrap_a_segment_dist__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_segment_length(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_TYPE_TABLE_NAME
SWIGRUNTIME swig_type_info * SWIG_MangledTypeQueryModule(swig_module_info *start, swig_module_info *end, const char *name)
SWIGINTERN int _wrap_a_point_z__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_tetrahedron_p3__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_base_classname(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_segment_rotate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_plane_p0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_plane_intersect__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIGTYPE_p_a_base
SWIGINTERN int _wrap_new_a_triangle__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_type_info _swigt__p_a_segment
SWIGINTERN int _wrap_new_a_plane(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static const char * swig_a_base_base_names[]
SWIGRUNTIME swig_module_info * SWIG_Tcl_GetModule(Tcl_Interp *interp)
SWIGINTERN int _wrap_a_point_s___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
struct swig_module_info swig_module_info
#define SWIG_TCL_POINTER
static swig_class _wrap_class_a_base
SWIGINTERN int _wrap_a_point_x__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_Acquire(ptr)
SWIGINTERN int _wrap_new_a_point__SWIG_4(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME void SWIG_Tcl_ObjectDelete(ClientData clientData)
SWIGINTERN int _wrap_a_segment_translate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
double d2r(const double d)
#define SWIG_ERROR
#define SWIG_TCL_HASHTABLE_INIT
#define SWIG_name
SWIGRUNTIME int SWIG_Tcl_ConvertPacked(Tcl_Interp *SWIGUNUSEDPARM(interp), Tcl_Obj *obj, void *ptr, int sz, swig_type_info *ty)
SWIGINTERN int _wrap_a_tetrahedron_p4__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_cast_info _swigc__p_a_mat[]
SWIGINTERN int _wrap_a_tetrahedron_c(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN void swig_delete_a_geom_base(void *obj)
#define SWIG_ObjectConstructor
static swig_type_info _swigt__p_a_base
SWIGINTERN int _wrap_a_point_translate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_NewInstanceObj(thisvalue, type, flags)
#define SWIG_Disown(ptr)
SWIGINTERN int _wrap_a_3dh_Y__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_segment_p2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_circle_centre__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_tetrahedron_p2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_class * swig_a_3dh_bases[]
static swig_type_info * swig_type_initial[]
SWIGINTERN int _wrap_a_3dh_set(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_method swig_a_plane_methods[]
SWIGINTERN int _wrap_a_circle_radius__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIGTYPE_p_std__ostream
#define SWIGTYPE_p_a_3dh
static int swigconstTableinit
struct swig_attribute swig_attribute
static swig_class * swig_a_tetrahedron_bases[]
SWIGINTERN a_point & a_point_divide(a_point *self, double v)
SWIGINTERN void swig_delete_a_point(void *obj)
static void * _p_a_circleTo_p_a_geom_base(void *x, int *SWIGUNUSEDPARM(newmemory))
void(* swig_delete_func)(ClientData)
SWIGINTERN int _wrap_new_a_point2__SWIG_2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_delete_a_geom_base(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME Tcl_HashTable * SWIG_Tcl_ObjectTable(void)
SWIGINTERN int _wrap_a_tetrahedron_p3__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_circle_normal__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME int SWIG_Tcl_ConvertPtrFromString(Tcl_Interp *interp, const char *c, void **ptr, swig_type_info *ty, int flags)
SWIGINTERN int _wrap_a_point2_equals(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_segment_intersect(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME swig_type_info * SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr)
SWIGINTERN int _wrap_a_segment_vec(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_segment_e___(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_tetrahedron_quality(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point2_add(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_class * swig_a_circle_bases[]
#define SWIG_MemoryError
SWIGINTERN int _wrap_a_segment_p1__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_contains(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME const char * SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name)
SWIGINTERN int _wrap_a_segment_distl(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_SystemError
#define SWIG_DivisionByZero
#define SWIGTYPE_p_double
SWIGINTERN int _wrap_a_plane_move(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_type_info _swigt__p_char
struct swig_method swig_method
SWIGINTERN int _wrap_a_tetrahedron_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_TCL_DECL_ARGS_2(arg1, arg2)
SWIGINTERN int _wrap_a_point_normalise(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_equals(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_point2_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_OverflowError
#define SWIGEXPORT
#define SWIG_IsOK(r)
SWIGINTERN int _wrap_new_a_3dh__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
int(* swig_wrapper)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST[])
SWIGINTERN int _wrap_a_3dh_X(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_p(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_delete_a_plane(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_translate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGRUNTIME void SWIG_Tcl_MakePtr(char *c, void *ptr, swig_type_info *ty, int SWIGUNUSEDPARM(flags))
struct swig_type_info *(* swig_dycast_func)(void **)
SWIGINTERN int _wrap_a_3dh_z(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_TCL_CALL_ARGS_2(arg1, arg2)
SWIGINTERN int _wrap_a_3dh_set__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_3dh_help(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_segment_distl__SWIG_0(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_class * swig_a_base_bases[]
SWIGINTERN int _wrap_a_segment_shortest(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_p2__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_attribute swig_a_point_attributes[]
SWIGINTERN int _wrap_a_triangle_p2(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_IndexError
static swig_class _wrap_class_a_point2
SWIGINTERN void SWIG_Tcl_InstallMethodLookupTables(void)
#define SWIG_TCL_STUBS_VERSION
#define SWIG_prefix
SWIGINTERN int _wrap_a_point2_translate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_p1__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_class * swig_a_point2_bases[]
SWIGINTERN int _wrap_a_triangle_rotate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_TCL_BINARY
SWIGRUNTIME char * SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz)
SWIGINTERN int _wrap_a_segment_dir(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_tetrahedron_f(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIG_OK
SWIGINTERN int _wrap_a_tetrahedron_translate(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
SWIGINTERN int _wrap_a_triangle_intersect(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static void * _p_a_segmentTo_p_a_base(void *x, int *SWIGUNUSEDPARM(newmemory))
#define SWIGTYPE_p_std__istream
SWIGINTERN int _wrap_dist__SWIG_1(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIGINTERNINLINE
static swig_attribute swig_a_base_attributes[]
SWIGINTERN int _wrap_a_triangle_s(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
static swig_class * swig_a_point_bases[]
SWIGINTERN int _wrap_average__SWIG_3(ClientData clientData SWIGUNUSED, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
#define SWIGRUNTIMEINLINE
double angle(a_point a, a_point b)
Definition: a_point.cxx:329
a_point cross(const a_point &a, const a_point &b)
Definition: a_point.cxx:284
a_point average_rot(const a_point &a, const a_point &b, double f)
Definition: a_point.cxx:352
a_point circle_centre(const a_point &p1, const a_point &p2, const a_point &p3)
Definition: a_point.cxx:293
double dist(const a_point &a, const a_point &b)
Definition: a_point.h:111
a_point average(const a_point &a, const a_point &b, double f=0.5)
Definition: a_point.h:113
an homogeneous 3d matrix class
Definition: a_3dh.h:30
static const std::string help()
Definition: a_3dh.cxx:19
Definition: a_base.h:28
static const std::string help()
Definition: a_base.cxx:21
static const std::string help()
Definition: a_circle.cxx:23
a coordinate system in the Points&Forces file format
Definition: a_coord.h:33
static const std::string help()
Definition: a_geom_base.cxx:21
Definition: a_mat.h:42
a plane
Definition: a_plane.h:32
static const std::string help()
Definition: a_plane.cxx:22
a_point2 & translate(double x, double y)
Definition: a_point2.h:62
static const std::string help()
Definition: a_point2.cxx:22
a_point2 & normalise()
Definition: a_point2.cxx:90
a_point2 & rotate(const double angle)
Definition: a_point2.cxx:97
a_point & rotate(const a_point &x_axis, const a_point &y_axis, const a_point &z_axis)
Definition: a_point.cxx:225
a_point cross(const a_point &) const
Definition: a_point.cxx:96
a_point & normalise()
Definition: a_point.cxx:190
static const std::string help()
Definition: a_point.cxx:22
a_point & translate(double x, double y, double z)
Definition: a_point.h:70
a_point & max()
set maximum abs value of component to 1.
Definition: a_point.cxx:214
a segment
Definition: a_segment.h:29
static const std::string help()
Definition: a_segment.cxx:25
a_segment shortest(const a_segment &s, double &m1, double &m2) const
intersection between two segments, returns a segment between the closest point between the two segmen...
Definition: a_segment.cxx:177
a_segment & rotate(const a_point &x_axis, const a_point &y_axis, const a_point &z_axis)
Definition: a_segment.cxx:62
a_segment & translate(double x, double y, double z)
Definition: a_segment.h:51
a_segment intersect(const a_segment &s, double &m1, double &m2) const
intersection between two segments, returns a segment between the closest point between the two lines ...
Definition: a_segment.cxx:139
a tetrahedron
Definition: a_tetrahedron.h:31
static const std::string help()
a_tetrahedron & rotate(const a_point &x_axis, const a_point &y_axis, const a_point &z_axis)
a_tetrahedron & translate(double x, double y, double z)
a triangle
Definition: a_triangle.h:31
a_triangle & invert()
Definition: a_triangle.cxx:94
a_triangle & rotate(const a_point &x_axis, const a_point &y_axis, const a_point &z_axis)
Definition: a_triangle.cxx:86
static const std::string help()
Definition: a_triangle.cxx:24
a_triangle & translate(double x, double y, double z)
Definition: a_triangle.cxx:78
char buf[256]
Definition: copy.h:17
int val
swig_type_info * type
struct swig_cast_info * prev
struct swig_cast_info * next
swig_converter_func converter
swig_method * methods
swig_type_info ** type
Tcl_HashTable hashtable
struct swig_class ** bases
swig_module_info * module
void(* destructor)(void *)
swig_wrapper constructor
swig_attribute * attributes
const char ** base_names
swig_type_info ** ptype
swig_type_info ** types
swig_cast_info ** cast_initial
swig_type_info ** type_initial
struct swig_module_info * next
swig_dycast_func dcast
struct swig_cast_info * cast