HVerticalUtility Class Reference

Static Public Member Functions

static void ColorizePointCloud (HC_KEY const segment)
 
- Static Public Member Functions inherited from HUtility
static void AdjustPositionToPlane (HBaseView *view, HPoint &position, HPoint point_in_plane)
 
static void ascii_to_unicode (char const *ascii, unsigned short *unicode)
 
static void BatchRead (HBaseModel *model, const char *directory, const char *extension)
 
static bool BuildIncludePath (HC_KEY objectkey, const HC_KEY *includelist, int ilength, HC_KEY *fullpath, int *fplength, HC_KEY matchkey=INVALID_KEY)
 
static void BuildIncludePathFromSelection (HSmartSelItem *sitem, int &plen, HC_KEY *fullpath)
 
static void CalculateBoundingInfo (HC_KEY startkey, HPoint &min, HPoint &max, HPoint &delta, HPoint &mid)
 
static void CalculateCornerImagePosition (HBaseView *view, int iwidth, int iheight, HWindowCorner corner, float &posx, float &posy)
 
static int CalculateKeyPath (HC_KEY startkey, HBaseView *view, HC_KEY *keyarray, int maxarray)
 
static int CalculateMajorAxis (HBaseView *view)
 
static void Camera_To_Transform (HCamera *camera, float *pos, float projection_matrix[], float complete_matrix[])
 
static bool CamerasEqual (const HCamera &camera1, const HCamera &camera2)
 
static void ClampPointToWindow (HPoint *point)
 
static long ClipPolygonAgainstPlane (long vertexCount, const HPoint vertex[], const float plane[], HPoint result[], bool *noCut=0)
 
static void CloseAllSegments (HC_KEY endkey=INVALID_KEY)
 
static float ComputeAngleBetweenVector (HPoint p1, HPoint p2)
 
static void ComputeDoublePrecisionCrossProduct (double *vector1, double *vector2, double *up)
 
static double ComputeDoublePrecisionDotProduct (double *vector1, double *vector2)
 
static double ComputeDoublePrecisionVectorLength (double *vector1)
 
static void ComputeShellNormal (HC_KEY skey, HPoint &tnormal)
 
static void ComputeVectorToVectorRotationMatrix (float matrix[], HPoint v1, HPoint v2)
 
static int ConstrainToVector (const float matrix_in[], const HVector &vector, float matrix_out[])
 
static void ConvertLocalPixelsToLocalWindow (HBaseView *view, HPoint *in_system, HPoint *out_system=0)
 
static void CountShellData (HC_KEY shell_key, int *faces, int *vertices, int *triangles, int *tristrips=0)
 
static bool CreateAxisCircle (HPoint const &center, float radius, int axis, bool convert=true)
 
static HC_KEY CreateScaleIndependentSegment (const char *segname, bool SetCallback=true)
 
static void CreateZebraStripeTexture (int width, int height, int stripwidth, bool horizontal, HPixelRGB colorstripes, HPixelRGB colorbackground)
 
static void DecipherTextureString (char *texdef, char *Source, bool *DownSampling=0, bool *DownSamplingSet=0, char *ParameterizationSource=0, char *InterpolationFilter=0, char *DecimationFilter=0, char *Layout=0, char *Tiling=0, bool *ValueScaleSet=0, bool *ValueScale=0, float *ValueScaleMin=0, float *ValueScaleMax=0, char *BlendingMode=0)
 
static void DeleteManipulators (HC_KEY key)
 
static float EaseInEaseOut (float t, float a, float b, float c)
 
static const char * extra_pointer_format ()
 
static bool ExtractRGB (char *text, float &r, float &g, float &b)
 
static void Find_Relative_Path (HC_KEY from_seg_key, HC_KEY to_seg_key, char *path)
 
static int FindContents (HC_KEY &key, bool original=false)
 
static int FindFaceByIndex (int findex, int *flist, int flen)
 
static void FindFileNameAndDirectory (const char *filename_in, char *dir_out, char *filename_out)
 
static void FindFileNameAndDirectory (__wchar_t const *filename_in, __wchar_t *dir_out, __wchar_t *filename_out)
 
static void FindFileNameExtension (const char *filename_in, char *ext_out, int size=-1)
 
static void FindFileNameExtension (__wchar_t const *const filename_in, __wchar_t *ext_out, int size=-1)
 
static HC_KEY FindOneObject (const char *type, bool l=0)
 
static void FindUnicodeFileNameExtension (const unsigned short *filename_in, char *ext_out)
 
static void Generate_LODs (bool do_recurse=true, bool delete_orig_shells=false, bool insert_null_lods=false, int n_lod_levels=2, float reduction_ratio=0.20)
 
static void GenerateCuboidPoints (HPoint const *max, HPoint const *min, HPoint *points)
 
static bool GetAllowAnimation (HC_KEY key)
 
static void GetCameraFromGLFrustum (double const left, double const right, double const bottom, double const top, double const near_z, double const far_z, bool const perspective, HPoint &pos, HPoint &target, HPoint &up, char *projection, double &width, double &height, double &near_limit)
 
static void GetCameraFromMatrix (float matrix[], HPoint *target, HPoint *position, HPoint *up_vector, HPoint *translation)
 
static HPoint GetCentroid (HC_KEY seg_key)
 
static void GetMatrixFromCamera (HPoint target, HPoint position, HPoint up_vector, HPoint translation, float matrix[])
 
static HC_KEY GetNextRenumberedKey (HBaseView *view)
 
static void GetScaleIndependentGeomPosition (HC_KEY segkey, float &x, float &y, float &z)
 
static HC_KEY GetScaleIndependentGeomSegmentKey (HC_KEY segkey)
 
static float GetTime ()
 
static HPoint GetTransformedCentroid (HC_KEY seg_key, float matrix[]=0)
 
static void GetViewplaneVectors (HC_KEY segment_key, double *view, double *up)
 
static HC_KEY GrabSegment (HC_KEY key)
 
static void InsertArrow (float stick_length, float tip_length, float stick_radius, float arrow_radius, const char *text, const char *stick_color, const char *tip_color, int num_sides=6, float tip_falloff=0.05, bool reverse=true)
 
static HC_KEY InsertBox (HPoint const *max, HPoint const *min)
 
static HC_KEY InsertRectangle (const char *seg, float x0, float y0, float x1, float y1, float z=0.0f, bool fill=false)
 
static void InsertRotatedArrow (float stick_length, float tip_length, float stick_radius, float tip_radius, float distance, int adelta, float rotang, const char *stick_color, const char *tip_color, int num_sides, float tip_falloff, bool reverse)
 
static HC_KEY InsertWireframeBox (HPoint *max, HPoint *min)
 
static void InterpolateNormalAlongEdge (HPoint &p1, HPoint &n1, HPoint &p2, HPoint &n2, HPoint &p3, HPoint &n3)
 
static void IntersectionLinePlane (HPoint *p1, HPoint *p2, HPlane *p, HPoint *res)
 
static int IsChildOf (HC_KEY owner, HC_KEY child, HC_KEY klist[]=0)
 
static bool IsIdentityMatrix (float matrix[])
 
static bool IsModelKey (HC_KEY modelkey, HC_KEY objectkey)
 
static bool IsPointInsideAllEdges (const float *pt, const float points1[], int len, const int face1[], const float plane1[], float fudge)
 
static bool IsSafeForSinglePrecision (double element, bool check_roundoff=false)
 
static bool IsSafeForSinglePrecision (int element_count, double const *elements, bool check_roundoff=false)
 
static bool IsSegmentKey (HC_KEY key)
 
static void LocalPixelsToWorld (HCamera *camera, bool righthanded, float xres, float yres, int xwpix, int ywpix, float result[])
 
static void MakeViewSnapshot (HBaseView *view, int width, int height, char **data)
 
static void MakeViewSnapshot (HBaseView *view, HC_KEY image_key)
 
static void MatrixToQuaternion (float matrix[], float quaternion[])
 
static HC_KEY Merge_Shells (bool do_recurse, bool delete_orig_shells=false, bool optimize_shell=true, bool generate_regions=false)
 
static HC_KEY Merge_Shells_Generate_Regions (int num_shells, HC_KEY *shell_keys, bool delete_orig_shells=false)
 
static void MergePointsIntoShell (int num_shell_points, HPoint plist1[], int num_shell_facelist, int flist1[], int num_merge_points, HPoint merge_points[], HPoint merge_vectors[], float tolerance, bool AddExtraPoints, int newpoints[], int *newpointslen)
 
static void MergePolylines ()
 
static HC_KEY MergeShells (HC_KEY shell1, HC_KEY shell2)
 
static bool ModifyPushedAttribute (const char *attName, const char *newStyle)
 
static void MoveToTemp (HC_KEY movekey, HC_KEY tempkey)
 
static void MultiSmoothTransitions (HBaseView *m_pView, int num_keys, HC_KEY *seg_key, float new_matrix[], HCamera *new_camera=0)
 
static void NameSegments (HC_KEY &key, HBaseView *view)
 
static void NormalizeDoublePrecisionVector (double *vector1)
 
static HC_KEY OpenSegmentFromKey (HC_KEY key, char *segment)
 
static void OptimizeModelByGrid (HBaseView *view, ShellToRegionMapper *mapper)
 
static void OptimizeSegmentTree (HC_KEY old_seg_key, HC_KEY *new_seg_key, bool transform_shells=true, bool merge_shells=true, bool create_shell_regions=false)
 
static void Order (HPoint *one, HPoint *two)
 
static bool PointsEqual (HPoint *point1, HPoint *point2)
 
static bool PopAttribute (const char *attName)
 
static void ProjectShell (HC_KEY shellkey)
 
static bool PushAttribute (const char *attName)
 
static void PushAttribute (const char *attName, const char *attText)
 
static void QuaternionToMatrix (float quaternion[], float matrix[])
 
static void ReadjustTarget (HBaseView *view)
 
static void Recursive_Merge_Shells (HShell *total_info, HShell *max_info, bool do_recurse, bool delete_orig_shells=false, bool insert_null_lods=false)
 
static void RegisterCallbacks ()
 
static void RenameSegment (HC_KEY segkey, const char *newname)
 
static bool RLECompress (int const in_len, unsigned char const *const in_buf, int *out_len, unsigned char *const out_buf)
 
static void RotateToVector (HPoint start, HPoint end, bool doTranslation=true)
 
static bool SafeSetUserOption (const char *opt)
 
static bool SafeShowUserOption (char *opt)
 
static bool Segment_Shell_Allocate (HShell *total_info, HShell *max_info, bool do_recurse)
 
static bool SegmentExists (const char *segment)
 
static HC_KEY SelectUnderCursor (HBaseView *view, float x, float y, bool doSelection=true, bool DeSelect=false)
 
static void SetScaleIndependentGeomPosition (HC_KEY segkey, float x, float y, float z)
 
static void Shell_Search (HShell *total_info, HShell *max_info, bool do_recurse)
 
static void ShowContentsWithPath (const char *entitytypes, struct vlist_s **ret_pathlist, bool storePath=false, bool includeIncludes=true, bool filterIncludes=true)
 
static void ShowModellingMatrix (float *segment_modelling_matrix)
 
static void ShowNormals (HC_KEY shellkey, float normallength)
 
static bool ShowOneHeuristic (const char *type, char *res=0)
 
static bool ShowOneRenderingOption (const char *type, char *res=0)
 
static bool ShowOneUserOption (const char *option, char *res)
 
static bool ShowPushedAttribute (const char *attName, HUserOptions &attText)
 
static HC_KEY SmartSelectUnderCursor (HBaseView *view, float x, float y, bool doSelection=true, bool DeSelect=false)
 
static void SmoothMatrixTransition (HBaseView *m_pView, HC_KEY seg_key, float new_matrix[])
 
static void SmoothQuaternionTransition (HBaseView *m_pView, char *old_seg, char *new_seg, int num_of_transitions)
 
static void SmoothTransition (const HPoint &co, const HPoint &to, const HPoint &uo, float fieldwidtho, float fieldheighto, const HPoint &cn, const HPoint &tn, const HPoint &un, float fieldwidthn, float fieldheightn, HBaseView *view)
 
static void SmoothTransition (HCamera old_camera, const HCamera &new_camera, HBaseView *view)
 
static int strlen16 (const unsigned short *p16)
 
static void SubdivideShells (HC_KEY sskey, HC_KEY startkey, HC_KEY newkey, int numx, int numy, int numz, ShellToRegionMapper *mapper=0, bool DoCut=true, bool DeleteOriginalShells=false, bool breakShells=false)
 
static void SuppressAnimation ()
 
static void TransitionQuaternion (float quat_old[], float quat_new[], float t, float qt[])
 
static HFileOutputResult TwoPassPrint (const char *driver, HOutputHandlerOptions *options)
 
static unsigned short * uconvert (const char *text)
 
static void unicode_to_ascii (unsigned short const *unicode, char *ascii)
 
static void UnsetAttributes ()
 
static void UnwindIncludes (HC_KEY &key)
 
static void UnwindIncludes (HC_KEY &newkey, HC_KEY *keys, int count)
 
static void URIdecode (const char *in_string, char *out_buffer, MVO_POINTER_SIZED_UINT *n)
 
static void URIencode (const char *in_string, MVO_POINTER_SIZED_UINT n, char *out_buffer)
 
static HC_KEY UserOptionExists (HC_KEY key, const char *attrib, char *result)
 
static int ustrlen (unsigned short *text)
 
static bool ZlibCompress (int const in_len, unsigned char const *const in_buf, int &out_len, unsigned char *const out_buf)
 
static bool ZlibDecompress (int const in_len, unsigned char const *const in_buf, int &out_len, unsigned char *const out_buf)
 

Additional Inherited Members

- Public Types inherited from HUtility
enum  { X, Y, Z, W }
 
enum  { XY, XZ, YZ }
 
- Static Public Attributes inherited from HUtility
static const float EH_Epsilon
 default=0.01
 
static const float PI
 default=3.1415926f
 

The documentation for this class was generated from the following file: