===================================================== Liste_Funktionen_Beginn: UFA_add_fac add face to MemTab(Fac3) UFA_chg_fac set face UFA_2fac_facpt create 2 new Faces from 1 face (point on edge) UFA_3fac_facpt create 3 new Faces from 1 face UFA_ifac_ck_edgu find (1|2) faces from unoriented Edge (2 ipt's) UFA_ifac_ck_edgo find face from oriented Edge (2 ipt's) UFA_nifac_ck_pt get all faces going tru point with index ipt UFA_esn_nxt get EdgeSeqNr of next Edge (CCW) UFA_esn_prv get EdgeSeqNr of previous Edge (CCW) UFA_esn_opp_psn get EdgeSeqNr of Edge opposite to PointSeqNr UFA_ipOpp_fac_esn get point opposite to edge UFA_ipOpp_facpt get 3.point of fc into ipOpp. (In: 1.pt; out: 3.pt) UFA_ipOpp_facedg get point opposite to edge (ip3 & ptNr from ip1) UFA_2ip_ck_ptfac ck if ip1 is used in face; get ip2, ip3. UFA_2ip_fac_esn get pointNrs for Edge from face + EdgeSeqNr UFA_2pt2_fac_esn get 2D-points of edge of face + EdgeSeqNr UFA_opt_diag check common edge for optimize UFA_opt__ test 2 common Edges UFA_opt_saf UFA_opt_ckCvx check if 2 faces with common edge are convex UFA_opt_ckOpt Check Delaunay triangulation UFA_esn_int_fac_ln Line goes tru Edge iei into Face fac; check intersection. UFA_2fac_flip flip 2 faces with common edge UFA_esn_edg get EdgeSequenceNumber of face from pointNr UFA_pFac3_esn get pointers into Face UFA_fnb_init create neighbourfaces for mesh UFA_edg_find_facn find neighbourface for edge UFA_setinb set neighbour UFA_ar_fac get (signed) area of face UFA_BL_cke UFA_dump1 dump face and its neighbours Liste_Funktionen_Ende: ===================================================== - see also: UT2D_ck_pt_in_tria ../ut/ut_tria.c Triangle-functions (using struct Point) ../ut/ut_msh.c MSH Funktionen fuer Meshes (MemTab)
#include "../xa/MS_Def0.h"
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdarg.h>
#include "../xa/ut_ui_TX.h"
#include "../ut/ut_geo.h"
#include "../ut/ut_memTab.h"
#include "../ut/ut_txt.h"
#include "../ut/ut_tin.h"
#include "../gr/ut_UI.h"
Functions | |
typedef_MemTab (Fac3) | |
typedef_MemTab (EdgeLine) | |
int | UFA_BL_cke (int ie1, int ie2, MemTab(EdgeLine)*eTab) |
int | UFA_fnb_init (Fac3 *fnb, Fac3 *fa, int fNr) |
int | UFA_opt__ (Fac3 *fa, Fac3 *fnb, int fNr, Point2 *p2a, MemTab(EdgeLine)*eTab, char *saf) |
int | UFA_opt_saf (int if1, int if2, int ip1, int ip2, int ip3, int ip4, MemTab(EdgeLine)*eTab, char *saf) |
int | UFA_opt_ckOpt (Point2 *p1, Point2 *p2, Point2 *p3, Point2 *p4) |
int | UFA_opt_ckCvx (Point2 *p1, Point2 *p2, Point2 *p3, Point2 *p4) |
int | UFA_2fac_flip (int if1, int esn1, int if2, int esn2, Fac3 *fa, Fac3 *fnb) |
int | UFA_setinb (int ifc, int ie1, int ifnb, Fac3 *fa, Fac3 *fnb) |
int | UFA_esn_edg (Fac3 *fac1, int ie1) |
int | UFA_pFac3_esn (int **ip1, int **ip2, int **ip3, Fac3 *f, int esn) |
int | UFA_dump1 (Fac3 *fac, Fac3 *fnb, char *txt,...) |
int | UFA_ipOpp_facpt (int *ipOpp, Fac3 *fc, int ip) |
int | UFA_ipOpp_facedg (int *ipOpp, int *esn, Fac3 *fac1, int ie) |
int | UFA_2ip_ck_ptfac (int *ip2, int *ip3, Fac3 *fc, int ip1) |
int | UFA_edg_find_facn (Fac3 *fa, int fNr, int ie1, int ie2) |
int | UFA_2fac_facpt (MemTab(Fac3)*fTab, int ipt, int ifc, int ie) |
int | UFA_3fac_facpt (MemTab(Fac3)*fTab, int ipt, int ifc) |
int | UFA_chg_fac (Fac3 *fa, int fNr, int i1, int i2, int i3) |
int | UFA_add_fac (MemTab(Fac3)*fTab, int i1, int i2, int i3) |
int | UFA_2ip_fac_esn (int *i1, int *i2, int ie, Fac3 *fc) |
int | UFA_ifac_ck_edgu (int *if1, int *ie1, int *if2, int *ie2, int ip1, int ip2, Fac3 *fa, int fNr) |
int | UFA_ifac_ck_edgo (int *if1, int *ie1, int ip1, int ip2, Fac3 *fa, int fNr) |
int | UFA_nifac_ck_pt (int *iTab, char *iEdg, int *iNr, int ipt, Fac3 *fa, int fNr) |
int | UFA_ar_fac (double *ar, Fac3 *fc, Point2 *pa) |
typedef_MemTab | ( | Fac3 | ) |
typedef_MemTab | ( | EdgeLine | ) |
int UFA_BL_cke | ( | int | ie1, | |
int | ie2, | |||
MemTab(EdgeLine)* | eTab | |||
) |
RetCod: 0 yes; ie1-ie2 is a BreakLine; -1 no; ie1-ie2 is no BreakLine.
int UFA_opt_saf | ( | int | if1, | |
int | if2, | |||
int | ip1, | |||
int | ip2, | |||
int | ip3, | |||
int | ip4, | |||
MemTab(EdgeLine)* | eTab, | |||
char * | saf | |||
) |
change diagonalLine; common Edge is p1-p2; change to p3-p4.
set the neighbour of edge starting with point ie1 of Face ifc to ifnb
int UFA_pFac3_esn | ( | int ** | ip1, | |
int ** | ip2, | |||
int ** | ip3, | |||
Fac3 * | f, | |||
int | esn | |||
) |
int UFA_ipOpp_facpt | ( | int * | ipOpp, | |
Fac3 * | fc, | |||
int | ip | |||
) |
int UFA_ipOpp_facedg | ( | int * | ipOpp, | |
int * | esn, | |||
Fac3 * | fac1, | |||
int | ie | |||
) |
int UFA_2ip_ck_ptfac | ( | int * | ip2, | |
int * | ip3, | |||
Fac3 * | fc, | |||
int | ip1 | |||
) |
int UFA_edg_find_facn | ( | Fac3 * | fa, | |
int | fNr, | |||
int | ie1, | |||
int | ie2 | |||
) |
int UFA_2fac_facpt | ( | MemTab(Fac3)* | fTab, | |
int | ipt, | |||
int | ifc, | |||
int | ie | |||
) |
int UFA_3fac_facpt | ( | MemTab(Fac3)* | fTab, | |
int | ipt, | |||
int | ifc | |||
) |
int UFA_chg_fac | ( | Fac3 * | fa, | |
int | fNr, | |||
int | i1, | |||
int | i2, | |||
int | i3 | |||
) |
int UFA_add_fac | ( | MemTab(Fac3)* | fTab, | |
int | i1, | |||
int | i2, | |||
int | i3 | |||
) |
int UFA_2ip_fac_esn | ( | int * | i1, | |
int * | i2, | |||
int | ie, | |||
Fac3 * | fc | |||
) |
int UFA_ifac_ck_edgu | ( | int * | if1, | |
int * | ie1, | |||
int * | if2, | |||
int * | ie2, | |||
int | ip1, | |||
int | ip2, | |||
Fac3 * | fa, | |||
int | fNr | |||
) |
int UFA_ifac_ck_edgo | ( | int * | if1, | |
int * | ie1, | |||
int | ip1, | |||
int | ip2, | |||
Fac3 * | fa, | |||
int | fNr | |||
) |
int UFA_nifac_ck_pt | ( | int * | iTab, | |
char * | iEdg, | |||
int * | iNr, | |||
int | ipt, | |||
Fac3 * | fa, | |||
int | fNr | |||
) |