#ifndef HS_GP_DIR2D_H #define HS_GP_DIR2D_H #include "hs_types.h" #ifdef __cplusplus extern "C" { #endif gp_Dir2d * hs_new_gp_Dir2d(double x, double y); void hs_delete_gp_Dir2d(gp_Dir2d* dir); double hs_gp_Dir2d_X(gp_Dir2d * pnt); double hs_gp_Dir2d_Y(gp_Dir2d * pnt); void hs_gp_Dir2d_SetX(gp_Dir2d * pnt, double x); void hs_gp_Dir2d_SetY(gp_Dir2d * pnt, double y); bool hs_gp_Dir2d_IsEqual(gp_Dir2d * a, gp_Dir2d * b, double angularTolerance); bool hs_gp_Dir2d_IsNormal(gp_Dir2d * a, gp_Dir2d * b, double angularTolerance); bool hs_gp_Dir2d_IsOpposite(gp_Dir2d * a, gp_Dir2d * b, double angularTolerance); bool hs_gp_Dir2d_IsParallel(gp_Dir2d * a, gp_Dir2d * b, double angularTolerance); double hs_gp_Dir2d_Angle(gp_Dir2d * a, gp_Dir2d * b); double hs_gp_Dir2d_Crossed(gp_Dir2d * a, gp_Dir2d * b); double hs_gp_Dir2d_Dot(gp_Dir2d * a, gp_Dir2d * b); void hs_gp_Dir2d_Reverse(gp_Dir2d* ax1); gp_Dir2d * hs_gp_Dir2d_Reversed(gp_Dir2d* ax1); void hs_gp_Dir2d_Mirror(gp_Dir2d * theDir2d, gp_Dir2d * theAxis); gp_Dir2d * hs_gp_Dir2d_Mirrored(gp_Dir2d * theDir2d, gp_Dir2d * theAxis); void hs_gp_Dir2d_MirrorAboutAx2d(gp_Dir2d * theDir2d, gp_Ax2d * theAxis); gp_Dir2d * hs_gp_Dir2d_MirroredAboutAx2d(gp_Dir2d * theDir2d, gp_Ax2d * theAxis); void hs_gp_Dir2d_Rotate(gp_Dir2d * theDir2d, double amount); gp_Dir2d * hs_gp_Dir2d_Rotated(gp_Dir2d * theDir2d, double amount); void hs_gp_Dir2d_Transform(gp_Dir2d * theDir2d, gp_Trsf2d * trsf); gp_Dir2d * hs_gp_Dir2d_Transformed(gp_Dir2d * theDir2d, gp_Trsf2d * trsf); #ifdef __cplusplus } #endif #endif // HS_GP_DIR_H