Go to the source code of this file.
Defines | |
#define | EXTERN extern |
#define | TecUtilSetForEachMember(Member, Set) |
Functions | |
Boolean_t | TecUtilTimerAddCallback (UInt32_t Interval, ArbParam_t ClientData, AddOnTimerCallback_pf TimerCallback) |
Adds a timer callback, a function which is called by Tecplot at a set interval of time. More... | |
Boolean_t | TecUtilOnIdleQueueAddCallback (OnIdleCallback_pf Callback, ArbParam_t ClientData) |
Adds the function to a list of functions that Tecplot calls only one time when Tecplot is in an idle state. More... | |
Boolean_t | TecUtilDialogGetFolderName (const char *Title, char **FolderName) |
Browse for a folder name. More... | |
Boolean_t | TecUtilDialogGetFileName (SelectFileOption_e DialogOption, char **FileName, const char *FileTypeName, const char *DefaultFileName, const char *DefaultFilter) |
Launch a dialog to prompt the user for a file name Note: This function cannot be called when Tecplot is running in batch mode. More... | |
Boolean_t | TecUtilDialogGetFileNames (SelectFileOption_e DialogOption, StringList_pa *FileNames, const char *FileTypeName, StringList_pa DefaultFileNames, const char *DefaultFilter) |
Launch a dialog to prompt the user for one or more file names. More... | |
Boolean_t | TecUtilFileDownloadURL (const char *SourceURL, const char *LocalDestinationFile, Boolean_t IsAscii, Boolean_t ConfirmOverwrite) |
Download a file given a valid URL. More... | |
Boolean_t | TecUtilFileUploadURL (const char *LocalSourceFile, const char *DestinationURL, Boolean_t IsAscii, Boolean_t ConfirmOverwrite) |
Upload a file given a valid URL. More... | |
Boolean_t | TecUtilFileIsURL (const char *URLFName) |
Convenience function that will determine if a supplied string uses valid URL syntax.. More... | |
void | TecUtilArrayDealloc (void **Array) |
Deallocate an arbituary array previously allocated by Tecplot. More... | |
MouseButtonMode_e | TecUtilMouseGetCurrentMode (void) |
Get the current mouse mode. More... | |
Boolean_t | TecUtilMouseIsValidMode (MouseButtonMode_e MouseMode) |
This function will tell you if the specified mouse mode is valid for the current state of Tecplot. More... | |
Boolean_t | TecUtilMouseSetMode (MouseButtonMode_e MouseMode) |
Sets Tecplot's mouse mode to the one specified. More... | |
void | TecUtilSidebarAutoSensitivity (Boolean_t DoAuto) |
void | TecUtilSidebarSetSensitivity (MouseButtonMode_e MouseMode, Boolean_t IsSensitive) |
Boolean_t | TecUtilProbeInstallCallback (ProbeDestination_pf ProbeDestination, const char *InformationLineText) |
If the current frame mode is XY, 2D, or 3D, change the mouse mode to be the probe tool and instruct Tecplot to call a different function when the user completes a probe-like operation in the work area. More... | |
void | TecUtilProbeAllowCOBs (void) |
Instructs Tecplot to include COBs (iso-surfaces, slices, streamtraces, and so forth) along with zones during a probe when an addon has a callback registered with TecUtilProbeInstallCallback and if the user is pressing the Alt key. More... | |
double | TecUtilProbeXYGetIndValue (void) |
double | TecUtilProbeLinePlotGetIndValue (void) |
Call this function from a probe destination callback to get the independent value from the previous probe event in an Line-plot. More... | |
Boolean_t | TecUtilProbeXYGetDepValue (EntIndex_t MapNum, double *DepValue) |
Boolean_t | TecUtilProbeLinePlotGetDepValue (EntIndex_t MapNum, double *DepValue) |
Call this function from a probe destination callback to get a dependent value from the previous probe event in an Line-plot. More... | |
EntIndex_t | TecUtilProbeXYGetSourceMap (void) |
EntIndex_t | TecUtilProbeLinePlotGetSourceMap (void) |
Call this function from a probe destination callback to get the Line-map whose point was selected in the previous nearest-point probe. More... | |
LgIndex_t | TecUtilProbeGetPointIndex (void) |
Call this function from a probe destination callback to get the point index from the previous nearest-point probe event in a field plot or an XY-plot. More... | |
CZType_e | TecUtilProbeFieldGetCZType (void) |
Indicates type type of COB or zone that was selected during the probe event. More... | |
double | TecUtilProbeFieldGetValue (EntIndex_t VarNum) |
Call this function from a probe destination callback to get a field variable value from the previous probe event in a field plot. More... | |
EntIndex_t | TecUtilProbeFieldGetZone (void) |
Call this function from a probe destination callback to get the zone number from the previous probe event in a field plot. More... | |
IJKPlanes_e | TecUtilProbeFieldGetPlane (void) |
Call this function from a probe destination callback to get the I-, J-, or K-plane from the previous probe event in a field plot. More... | |
LgIndex_t | TecUtilProbeFieldGetFaceCell (void) |
Call this function from a probe destination callback to get the cell from the previous probe event in a field plot. More... | |
LgIndex_t | TecUtilProbeFieldGetCell (void) |
Call this function from a probe destination callback to get the cell from the previous probe event in a field plot. More... | |
Boolean_t | TecUtilExtractInstallCallback (ExtractDestination_pf ExtractDestination, const char *InformationLineText) |
If the current frame is 2D or 3D, change the mouse mode to be the extract discrete points tool and instruct Tecplot to call a different function when the user completes an extract-like operation in the work area. More... | |
Boolean_t | TecUtilDataSetCreate (const char *DataSetTitle, StringList_pa VarNames, Boolean_t ResetStyle) |
Create a new data set and attach it to the current frame. More... | |
VarLoadMode_e | TecUtilDataSetGetVarLoadMode (void) |
Get the variable load mode for the current data set. More... | |
void | TecUtilZoneSetBuildZoneOptInfo (EntIndex_t Zone, Boolean_t BuildZoneOptInfo) |
Instruct Tecplot to either build or forgo building zone optimization information. More... | |
Boolean_t | TecUtilDataSetAddZone (const char *Name, LgIndex_t IMax, LgIndex_t JMax, LgIndex_t KMax, ZoneType_e ZoneType, FieldDataType_e *VarDataType_Array) |
Add a zone to the data set attached to the current frame. More... | |
Boolean_t | TecUtilDataSetAddZoneX (ArgList_pa ArgList) |
Add a zone to the current data set. More... | |
Boolean_t | TecUtilDataSetAddVarX (ArgList_pa ArgList) |
Add a variable to the current data set. More... | |
Boolean_t | TecUtilZoneRealloc (EntIndex_t Zone, LgIndex_t NewIMaxOrNumDataPoints, LgIndex_t NewJMaxOrNumElements, LgIndex_t NewKMax) |
Reallocate a zone in the data set attached to the current frame. More... | |
Boolean_t | TecUtilDataSetAddVar (const char *VarName, FieldDataType_e *FieldDataType_Array) |
Add a variable to the current data set. More... | |
Boolean_t | TecUtilQuitAddQueryCallback (MopupQueryAddOnCallback_pf QuitQueryCallback) |
Include a function in the list of functions to call when Tecplot is considering shutting down. More... | |
Boolean_t | TecUtilStateChangeSetMode (StateChangeAddOnCallback_pf Callback, StateChangeMode_e Mode) |
Set the mode in which state changes are propagated to the specified state change callback. More... | |
Boolean_t | TecUtilStateChangeAddCallback (StateChangeAddOnCallback_pf StateChangeCallback) |
Include a function in the list of functions to call when a state change occurs in Tecplot. More... | |
void | TecUtilStateChanged (StateChange_e StateChange, ArbParam_t CallData) |
Inform tecplot of a state change. More... | |
Boolean_t | TecUtilStateChangeAddCallbackX (ArgList_pa ArgList) |
Register a callback to receive state changes. More... | |
Boolean_t | TecUtilStateChangeGetIndex (LgIndex_t *Index) |
Retrieve Index supplemental information from the previous state change. More... | |
Boolean_t | TecUtilStateChangeGetArbEnum (LgIndex_t *ArbEnum) |
Retrieve enumerated supplemental information from the previous state change. More... | |
Boolean_t | TecUtilStateChangeGetZoneSet (Set_pa *ZoneSet) |
Retrieve the set of zones associated with the previous state change. More... | |
Boolean_t | TecUtilStateChangeGetVarSet (Set_pa *VarSet) |
Retrieve the set of variables associated with the previous state change. More... | |
Boolean_t | TecUtilStateChangeGetZone (EntIndex_t *Zone) |
Retrieve the number of the zone associated with the previous state change. More... | |
Boolean_t | TecUtilStateChangeGetStyleParam (int Param, const char **StyleParam) |
Retrieve one of the P1,P2,P3,P4,P5, or P6 style parameters from the previous style state change. More... | |
void | TecUtilStateChangedX (ArgList_pa ArgList) |
Inform Tecplot of a state change. More... | |
Boolean_t | TecUtilMacroAddCommandCallback (const char *AddOnIDString, MacroCommandAddOnCallback_pf MacroCommandCallback) |
Include a function in the list of functions to call when the $!ADDONCOMMAND macro command is processed. More... | |
Boolean_t | TecUtilMacroRecordAddOnCommand (const char *AddOnIDString, const char *Command) |
Instruct Tecplot to record a macro command for your addon to the macro file which is currently being recorded. More... | |
Boolean_t | TecUtilMacroRecordAddOnComRaw (const char *AddOnIDString, const char *Command, const char *RawData) |
Instruct Tecplot to record an addon macro command, that includes raw data, to the macro file. More... | |
Boolean_t | TecUtilMacroRecordRawCommand (const char *Command) |
Send anything you want to the Tecplot record file. More... | |
Boolean_t | TecUtilDataSetAddJournalCommand (const char *AddOnIDString, const char *Instructions, const char *RawData) |
Adds a command to the data journal. More... | |
Boolean_t | TecUtilDataSetAddRawJournalCom (const char *Command) |
Adds a raw macro command to the data journal. More... | |
Boolean_t | TecUtilDataSetAddPostConvInstr (const char *AddOnIDString, const char *Instructions, const char *RawData) |
void | TecUtilDataSetSuspendMarking (Boolean_t DoSuspend) |
Stops Tecplot for altering or marking the loaded dataset. More... | |
void | TecUtilDispatchWorkAreaEvent (int I, int J, int ButtonOrKey, Event_e Event, Boolean_t IsShifted, Boolean_t IsAlted, Boolean_t IsControlled) |
Send an event to the Tecplot event dispatcher. More... | |
void | TecUtilMenuClearAll (void) |
Remove all menus, submenus, and menu items from the Tecplot menu bar. More... | |
Boolean_t | TecUtilMenuAddOption (const char *MenuPath, const char *MenuLabel, char Mnemonic, DynamicMenuCallback_pf MenuOptionCallback) |
Create a menu button to add to a menu option in Tecplot. More... | |
Boolean_t | TecUtilMenuAddSeparator (const char *MenuPath) |
Adds menu separator to the end of the specified parent menu. More... | |
Boolean_t | TecUtilMenuSetSensitivity (const char *MenuPath, const char *MenuLabel, Boolean_t IsSensitive) |
Set the sensitivity of a menu option. More... | |
Boolean_t | TecUtilImportAddConverter (DataSetConverter_pf ConverterCallback, const char *ConverterName, const char *FNameExtension) |
Register a data set converter with Tecplot. More... | |
Boolean_t | TecUtilImportAddLoader (DataSetLoader_pf LoaderCallback, const char *DataSetLoaderName, DynamicMenuCallback_pf LoaderSelectedCallback, DataSetLoaderInstructionOverride_pf InstructionOverrideCallback) |
Register a data set loader with Tecplot. More... | |
Boolean_t | TecUtilImportSetLoaderInstr (const char *DataSetLoaderName, StringList_pa Instructions) |
Inform Tecplot about the instructions used to load the current data set. More... | |
void | TecUtilImportWriteLoaderInstr (const char *DataSetLoaderName, StringList_pa Instructions) |
Writes a $!READDATASET macro command to the macro file if macro recording is on. More... | |
void | TecUtilAddOnRegisterInfo (const char *OfficialName, const char *Version, const char *Author) |
AddOn_pa | TecUtilAddOnRegister (int TecplotVersionNumber, const char *OfficialName, const char *Version, const char *Author) |
Register information about your addon with Tecplot. More... | |
Boolean_t | TecUtilAddOnGetRegisteredInfo (const char *OfficialName, char **Version, char **Author) |
Query Tecplot's list of loaded addons for the specified addon's version and author strings. More... | |
Boolean_t | TecUtilCurveRegisterExtCrvFit (const char *CurveFitName, GetLinePlotDataPointsCallback_pf GetLinePlotDataPointsCallback, GetProbeValueCallback_pf GetProbeValueCallback, GetCurveInfoStringCallback_pf GetCurveInfoStringCallback, GetCurveSettingsCallback_pf GetCurveSettingsCallback, GetAbbreviatedSettingsStringCallback_pf GetAbbreviatedSettingsStringCallback) |
Registers an extended curve fit addon. More... | |
void | TecUtilDialogErrMsg (const char *Message) |
Launch a dialog with an error message. More... | |
void | TecUtilDataValueShare (EntIndex_t SourceZone, EntIndex_t DestZone, EntIndex_t Var) |
Sets the properties of the variable so that it is shared between source and destination zones (using the source for values). More... | |
Boolean_t | TecUtilDataValueAlloc (EntIndex_t Zone, EntIndex_t Var) |
Allocates the space needed for the variable. More... | |
Boolean_t | TecUtilDataValueCanMemMapData (EntIndex_t Zone, EntIndex_t Var, MemMapOffset_t Offset, Boolean_t IsNativeByteOrder) |
Indicates if Tecplot can map the requested variable to a file. More... | |
Boolean_t | TecUtilDataValueMemMapData (EntIndex_t Zone, EntIndex_t Var, int FileDescriptor, MemMapOffset_t Offset, Boolean_t IsNativeByteOrder) |
Maps the Tecplot variable to the file. More... | |
Boolean_t | TecUtilDataValueBranchShared (EntIndex_t Zone, EntIndex_t Var) |
Branch off a shared variable. More... | |
void | TecUtilDataConnectShare (EntIndex_t SourceZone, EntIndex_t DestZone) |
Returns the share count for connectivity for the given zone. More... | |
Boolean_t | TecUtilDataConnectBranchShared (EntIndex_t Zone) |
Branch the connectivity information. More... | |
void | TecUtilDataValueArraySetByRef (FieldData_pa DestFieldData, LgIndex_t DestOffset, LgIndex_t DestCount, void *SourceValueArray) |
Copies the specified number of values from the base of the source value array to the destination field data starting at the specified offset. More... | |
void | TecUtilDataValueSetByRef (FieldData_pa FD, LgIndex_t PointIndex, double Value) |
Assign a value to a field variable at a specific position. More... | |
void | TecUtilDataNodeSetByZone (EntIndex_t Zone, LgIndex_t Element, LgIndex_t Corner, LgIndex_t Node) |
Set the node index for a particular corner of a finite-element. More... | |
void | TecUtilDataNodeSetByRef (NodeMap_pa NM, LgIndex_t Element, LgIndex_t Corner, LgIndex_t Node) |
Set the node index for a particular corner of a finite-element. More... | |
void | TecUtilLockOn (void) |
Lock Tecplot. More... | |
void | TecUtilLockOff (void) |
Lock Tecplot. More... | |
void | TecUtilLockStart (AddOn_pa AddOn) |
Lock Tecplot. More... | |
void | TecUtilLockFinish (AddOn_pa AddOn) |
Unlock Tecplot. More... | |
char * | TecUtilLockGetCurrentOwnerName (void) |
Queries for and returns the name of the object currently locking Tecplot. More... | |
void | TecUtilStatusStartPercentDone (const char *PercentDoneText, Boolean_t ShowStopButton, Boolean_t ShowProgressBar) |
Start monitoring the percent an operation is done. More... | |
void | TecUtilStatusSetPercentDoneText (const char *PercentDoneText) |
Sets string to be displayed when operation completed. More... | |
Boolean_t | TecUtilStatusCheckPercentDone (int PercentDone) |
Checks percent of current operation is completed. More... | |
void | TecUtilStatusFinishPercentDone (void) |
Checks when current operation is completed. More... | |
void | TecUtilDialogLaunchPercentDone (const char *Label, Boolean_t ShowTheScale) |
Launch the Percent Done dialog. More... | |
void | TecUtilDialogSetPercentDoneText (const char *Text) |
Update the text in the Percent Done dialog. More... | |
Boolean_t | TecUtilDialogCheckPercentDone (int PercentDone) |
Set the current value of the Percent Done dialog and check to see if the user has clicked Cancel. More... | |
void | TecUtilDialogDropPercentDone (void) |
Drop the Percent Done dialog. More... | |
Boolean_t | TecUtilMacroExecuteCommand (const char *Command) |
Instruct Tecplot to execute a single macro command. More... | |
Boolean_t | TecUtilMacroSetMacroVar (const char *MacroVar, const char *ValueString) |
Set the value for a macro variable. More... | |
void | TecUtilInterrupt (void) |
Interrupt Tecplot execution. More... | |
void | TecUtilGeomDelete (Geom_ID GID) |
Deletes the specified geometry object. More... | |
void | TecUtilTextDelete (Text_ID TID) |
Deletes the specified text object. More... | |
Boolean_t | TecUtilPickGeom (Geom_ID GID) |
Add the specified geometry to the pick list. More... | |
Boolean_t | TecUtilPickText (Text_ID TID) |
Add the specified text to the pick list. More... | |
Boolean_t | TecUtilGeomIsValid (Geom_ID GID) |
Validate a geometry ID. More... | |
Boolean_t | TecUtilTextIsValid (Text_ID TID) |
Determine if the text object is valid in the current frame context. More... | |
char * | TecUtilStringConvOldFormatting (const char *OldString, Font_e BaseFont) |
Convert a text string using the old formatting syntax into the new formatting syntax. More... | |
char * | TecUtilStringAlloc (int MaxLength, const char *DebugInfo) |
Allocate a character string. More... | |
void | TecUtilStringDealloc (char **S) |
Free a string previously allocated with TecUtilStringAlloc, or one that was allocated and returned as the result of calling any other TecUtilxxx function. More... | |
void | TecUtilStringListClear (StringList_pa StringList) |
Remove all members of the string list. More... | |
void | TecUtilStringListRemoveStrings (StringList_pa StringList, LgIndex_t StringNumber, LgIndex_t Count) |
Remove the specified number of strings beginning at the nth string. More... | |
void | TecUtilStringListRemoveString (StringList_pa StringList, LgIndex_t StringNumber) |
Remove the nth string from the string list. More... | |
void | TecUtilStringListDealloc (StringList_pa *StringList) |
Deallocate the string list members and handle, and set the handle to NULL. More... | |
StringList_pa | TecUtilStringListAlloc (void) |
Create an empty string list. More... | |
Boolean_t | TecUtilStringListAppendString (StringList_pa StringList, const char *String) |
Append a copy of the string to the string list. More... | |
LgIndex_t | TecUtilStringListGetCount (StringList_pa StringList) |
Count the number of strings currently maintained by the string list. More... | |
char * | TecUtilStringListGetRawStringPtr (StringList_pa StringList, LgIndex_t StringNumber) |
Return a reference to the nth string in a string list. More... | |
char * | TecUtilStringListGetString (StringList_pa StringList, LgIndex_t StringNumber) |
Return a copy of the nth string from a string list. More... | |
Boolean_t | TecUtilStringListSetString (StringList_pa StringList, LgIndex_t StringNumber, const char *String) |
Place a copy of the specified string at the nth position in the string list. More... | |
Boolean_t | TecUtilStringListInsertString (StringList_pa StringList, LgIndex_t StringNumber, const char *String) |
Insert a copy of the string into the nth position of the string list. More... | |
StringList_pa | TecUtilStringListCopy (StringList_pa StringList) |
Return a handle to a duplicate of the specified string list and its contents. More... | |
Boolean_t | TecUtilStringListAppend (StringList_pa Target, StringList_pa Source) |
Append a copy of the contents of the source string list to the target string list. More... | |
char * | TecUtilStringListToNLString (StringList_pa StringList) |
Return a newline delimited string representation of the string list. More... | |
StringList_pa | TecUtilStringListFromNLString (const char *String) |
Create a string list from a newline delimited string. More... | |
Set_pa | TecUtilSetAlloc (Boolean_t ShowErr) |
Allocate a new empty set. More... | |
void | TecUtilSetDealloc (Set_pa *Set) |
Free all memory associated with the specified set and assign the set to be NULL. More... | |
Boolean_t | TecUtilSetCopy (Set_pa DstSet, Set_pa SrcSet, Boolean_t ShowErr) |
Copy one set to another. More... | |
void | TecUtilSetClear (Set_pa Set) |
Empties the specified set. More... | |
Boolean_t | TecUtilSetAddMember (Set_pa Set, SetIndex_t Member, Boolean_t ShowErr) |
Add the specified member to the specified set. More... | |
void | TecUtilSetRemoveMember (Set_pa Set, SetIndex_t Member) |
Remove a member from a set. More... | |
Boolean_t | TecUtilSetIsMember (Set_pa Set, SetIndex_t Member) |
Determine if the specified member is in the specified set. More... | |
Boolean_t | TecUtilSetIsEmpty (Set_pa Set) |
Determine if the specified set is NULL or contains no members. More... | |
SetIndex_t | TecUtilSetGetMemberCount (Set_pa Set) |
Get the count of the number of members in a set. More... | |
Boolean_t | TecUtilSetIsEqual (Set_pa Set1, Set_pa Set2) |
Determines if the specified sets are equal (have the same members). More... | |
SetIndex_t | TecUtilSetGetMember (Set_pa Set, SetIndex_t Position) |
Get the member of the specified set at the specified position. More... | |
SetIndex_t | TecUtilSetGetPosition (Set_pa Set, SetIndex_t Member) |
Get the position in the specified set at which the specified member is located. More... | |
SetIndex_t | TecUtilSetGetNextMember (Set_pa Set, SetIndex_t Member) |
Get the next member in the specified set which is located after the specified member. More... | |
double | TecUtilConvertXPosition (CoordSys_e OldCoordSys, CoordSys_e NewCoordSys, double OldX) |
Convert the specified X-coordinate value from one coordinate system to another. More... | |
double | TecUtilConvertXDimension (CoordSys_e OldCoordSys, CoordSys_e NewCoordSys, double OldDimension) |
Convert the specified horizontal dimension from one coordinate system to another. More... | |
double | TecUtilConvertYPosition (CoordSys_e OldCoordSys, CoordSys_e NewCoordSys, double OldY) |
Convert the specified Y-coordinate value from one specified coordinate system to another specified coordinate system. More... | |
double | TecUtilConvertYDimension (CoordSys_e OldCoordSys, CoordSys_e NewCoordSys, double OldDimension) |
Convert the specified vertical dimension from one coordinate system to another. More... | |
double | TecUtilConvertUnits (Units_e OldUnits, Units_e NewUnits, double OldSize) |
Convert from one measurement system to another. More... | |
LgIndex_t | TecUtilTecIni (const char *Title, const char *Variables, const char *FName, const char *ScratchDir, LgIndex_t *Debug, LgIndex_t *VIsDouble) |
Initializes the process of writing a binary data file. More... | |
LgIndex_t | TecUtilTecZne (const char *ZoneTitle, LgIndex_t *IMx, LgIndex_t *JMx, LgIndex_t *KMx, const char *ZFormat, const char *DupList) |
Writes header information about the next zone to be added to the data file. More... | |
LgIndex_t | TecUtilTecZneX (ArgList_pa ArgList) |
Writes the zone to the data file. More... | |
LgIndex_t | TecUtilTecDat (LgIndex_t *N, void *FieldData_Array, LgIndex_t *IsDouble) |
Writes an array of data to the data file. More... | |
LgIndex_t | TecUtilTecNod (LgIndex_t *NData_Array) |
Writes an array of node data to the binary data file. More... | |
LgIndex_t | TecUtilTecEnd (void) |
Must be called to close out the current data file. More... | |
LgIndex_t | TecUtilTecLab (const char *S) |
Write a set of custom labels to the data file. More... | |
LgIndex_t | TecUtilTecUsr (const char *S) |
Add a user-defined record, in the form of a character string, to the Tecplot data file. More... | |
LgIndex_t | TecUtilTecFil (LgIndex_t *F) |
Switch output context to a different file. More... | |
LgIndex_t | TecUtilTecTxt (double *XPos, double *YPos, LgIndex_t *PosCoordMode, LgIndex_t *AttachToZone, LgIndex_t *Zone, LgIndex_t *Font, LgIndex_t *FontHeightUnits, double *FontHeight, LgIndex_t *BoxType, double *BoxMargin, double *BoxLineThickness, LgIndex_t *BoxColor, LgIndex_t *BoxFillColor, double *Angle, LgIndex_t *Anchor, double *LineSpacing, LgIndex_t *TextColor, LgIndex_t *Scope, const char *Text, const char *MacroFunctionCommand) |
Write a text label to a binary tecplot data file. More... | |
LgIndex_t | TecUtilTecTxtX (ArgList_pa ArgList) |
Writes the text item to the data file. More... | |
LgIndex_t | TecUtilTecGeo (double *XPos, double *YPos, double *ZPos, LgIndex_t *PosCoordMode, LgIndex_t *AttachToZone, LgIndex_t *Zone, LgIndex_t *Color, LgIndex_t *FillColor, LgIndex_t *IsFilled, LgIndex_t *GeomType, LgIndex_t *LinePattern, double *PatternLength, double *LineThickness, LgIndex_t *NumEllipsePts, LgIndex_t *ArrowheadStyle, LgIndex_t *ArrowheadAttachment, double *ArrowheadSize, double *ArrowheadAngle, LgIndex_t *Scope, LgIndex_t *NumSegments, LgIndex_t *NumSegPts, float *XGeomData, float *YGeomData, float *ZGeomData, const char *MacroFunctionCommand) |
Write a geometry to a binary tecplot datafile. More... | |
LgIndex_t | TecUtilTecGeoX (ArgList_pa ArgList) |
Writes the geometry item to the data file. More... | |
LgIndex_t | TecUtilTecAux (char *Name, char *Value) |
Writes the name/value data set auxiliary data pair to the data file.. More... | |
LgIndex_t | TecUtilTecZAux (char *Name, char *Value) |
Writes the name/value zone auxiliary data pair to the data file. More... | |
LgIndex_t | TecUtilTecFace (LgIndex_t *FaceConnections) |
Writes the face neighbor connections to the data file. More... | |
Clipping_e | TecUtilTextGetClipping (Text_ID TID) |
Get the clipping properties of a text object. More... | |
void | TecUtilTextGetAnchorPos (Text_ID TID, double *XOrThetaPos, double *YOrRPos, double *ZPos) |
Get the anchor coordinate position of the text object in the current coordinate system. More... | |
void | TecUtilTextGetXYPos (Text_ID TID, double *XPos, double *YPos) |
CoordSys_e | TecUtilTextGetPositionCoordSys (Text_ID TID) |
Get the coordinate system to which the text is associated. More... | |
EntIndex_t | TecUtilTextGetZoneOrMap (Text_ID TID) |
Get the zone or map with which the text object is associated (if it is attached). More... | |
Boolean_t | TecUtilTextIsAttached (Text_ID TID) |
Determine if the text object is attached to a zone or map. More... | |
ColorIndex_t | TecUtilTextGetColor (Text_ID TID) |
Get the color of the text object. More... | |
Font_e | TecUtilTextGetFont (Text_ID TID) |
Get the font used for the text object. More... | |
double | TecUtilTextGetHeight (Text_ID TID) |
Get the text height in the currently defined text size units. More... | |
Units_e | TecUtilTextGetSizeUnits (Text_ID TID) |
Get the size units for the text object. More... | |
TextBox_e | TecUtilTextBoxGetType (Text_ID TID) |
Get the type of the box surrounding the text object. More... | |
double | TecUtilTextBoxGetMargin (Text_ID TID) |
Get the margin between the text and the box surrounding the text object. More... | |
double | TecUtilTextBoxGetLineThickness (Text_ID TID) |
Get the line thickness of the text box border. More... | |
ColorIndex_t | TecUtilTextBoxGetColor (Text_ID TID) |
Get the line color of the box surrounding the text object. More... | |
ColorIndex_t | TecUtilTextBoxGetFillColor (Text_ID TID) |
Get the fill color of the box surrounding the text object. More... | |
double | TecUtilTextGetAngle (Text_ID TID) |
Get the text angle. More... | |
TextAnchor_e | TecUtilTextGetAnchor (Text_ID TID) |
Get the text anchor style. More... | |
double | TecUtilTextGetLineSpacing (Text_ID TID) |
Get the spacing between lines of text. More... | |
Scope_e | TecUtilTextGetScope (Text_ID TID) |
Get the scope of the text object. More... | |
Boolean_t | TecUtilTextGetMacroFunctionCmd (Text_ID TID, char **MacroFunctionCommand) |
Get the macro function command string associated with the text object. More... | |
Boolean_t | TecUtilTextGetString (Text_ID TID, char **TextString) |
Get the string associated with the text object. More... | |
Text_ID | TecUtilTextGetNext (Text_ID TID) |
Get the next text object, relative to the specified text object, from the list of text objects maintained by the current frame. More... | |
Text_ID | TecUtilTextGetPrev (Text_ID TID) |
Get the previous text object, relative to the specified text object, from the list of text objects maintained by the current frame. More... | |
Clipping_e | TecUtilGeomGetClipping (Geom_ID GID) |
Function will get the clipping properties of a geometry. More... | |
void | TecUtilGeomGetAnchorPos (Geom_ID GID, double *XOrThetaPos, double *YOrRPos, double *ZPos) |
Gets the anchor postion of the specified geometry.. More... | |
void | TecUtilGeomImageSetUseRatio (Geom_ID GID, Boolean_t MaintainAspectRatio) |
Queries the state of the "preserve aspect ratio" toggle for an image geometry. More... | |
void | TecUtilGeomGetXYZAnchorPos (Geom_ID GID, double *XPos, double *YPos, double *ZPos) |
EntIndex_t | TecUtilGeomGetZoneOrMap (Geom_ID GID) |
Get the zone or Line-mapping to which the geometry is attached. More... | |
Boolean_t | TecUtilGeomIsAttached (Geom_ID GID) |
Determine whether or not a geometry is attached to a zone or Line-mapping. More... | |
ColorIndex_t | TecUtilGeomGetColor (Geom_ID GID) |
Get the geometry line color. More... | |
ColorIndex_t | TecUtilGeomGetFillColor (Geom_ID GID) |
Get the geometry fill color. More... | |
Boolean_t | TecUtilGeomGetIsFilled (Geom_ID GID) |
Determine if a geometry if filled. More... | |
GeomForm_e | TecUtilGeomGetType (Geom_ID GID) |
Get the geometry type. More... | |
LinePattern_e | TecUtilGeomGetLinePattern (Geom_ID GID) |
Get the line pattern of a geometry. More... | |
double | TecUtilGeomGetPatternLength (Geom_ID GID) |
Get the geometry line pattern length. More... | |
double | TecUtilGeomGetLineThickness (Geom_ID GID) |
Get the geometry line thickness. More... | |
SmInteger_t | TecUtilGeomEllipseGetNumPoints (Geom_ID GID) |
Get the number of points used to draw a circle or ellipse geometry. More... | |
ArrowheadStyle_e | TecUtilGeomArrowheadGetStyle (Geom_ID GID) |
Get the geometry arrowhead style. More... | |
ArrowheadAttachment_e | TecUtilGeomArrowheadGetAttach (Geom_ID GID) |
Get the geometry arrowhead attachment. More... | |
double | TecUtilGeomArrowheadGetSize (Geom_ID GID) |
Get the geometry arrowhead size. More... | |
double | TecUtilGeomArrowheadGetAngle (Geom_ID GID) |
Get the geometry arrowhead angle. More... | |
Scope_e | TecUtilGeomGetScope (Geom_ID GID) |
Get the geometry scope. More... | |
CoordSys_e | TecUtilGeomGetPositionCoordSys (Geom_ID GID) |
Get the geometry position coordinate system. More... | |
ImageResizeFilter_e | TecUtilGeomImageGetResizeFilter (Geom_ID GID) |
Get the name of the file associated with an image geometry. More... | |
void | TecUtilGeomImageSetResizeFilter (Geom_ID GID, ImageResizeFilter_e ResizeFilter) |
Sets the resize filter of an image geometry. More... | |
void | TecUtilGeomImageGetFileName (Geom_ID GID, char **FileName) |
Get the name of the file associated with an image geometry. More... | |
void | TecUtilGeomImageSetWidth (Geom_ID GID, double Width) |
Sets the width of an image geometry. More... | |
void | TecUtilGeomImageSetHeight (Geom_ID GID, double Height) |
Sets the Height of an image geometry. More... | |
void | TecUtilGeomImageGetSize (Geom_ID GID, double *Width, double *Height) |
Get the width and height of an image geometry. More... | |
void | TecUtilGeomImageResetAspectRatio (Geom_ID GID) |
Resets the aspect ratio after any changes have been made in the position of an image geometry. More... | |
Boolean_t | TecUtilGeomGetMacroFunctionCmd (Geom_ID GID, char **MacroFunctionCmd) |
Get the geometry macro function command. More... | |
Geom_ID | TecUtilGeomImageCreate (const char *FName, double CornerXOrTheta, double CornerYOrR, double Size) |
Create an image geometry. More... | |
Geom_ID | TecUtilGeomGetNext (Geom_ID GID) |
Get the next geometry in the list of geometries attached to the current frame. More... | |
Geom_ID | TecUtilGeomGetPrev (Geom_ID GID) |
Get the previous geometry in the list of geometries attached to the current frame. More... | |
void | TecUtilTextSetClipping (Text_ID TID, Clipping_e Clipping) |
Set the clipping properties of a text object. More... | |
void | TecUtilTextSetAnchorPos (Text_ID TID, double XOrThetaPos, double YOrRPos, double ZPos) |
Set the XY-position for the text object. More... | |
void | TecUtilTextSetXYPos (Text_ID TID, double XPos, double YPos) |
void | TecUtilTextSetCoordSysAndUnits (Text_ID TID, CoordSys_e PositionCoordSys, Units_e HeightUnits) |
Set the coordinate system for the position and the units for the character height of a text object. More... | |
void | TecUtilTextSetZoneOrMap (Text_ID TID, EntIndex_t ZoneOrMap) |
Set the zone or map to which the text object is associated (if it is attached). More... | |
void | TecUtilTextSetAttached (Text_ID TID, Boolean_t Attached) |
Indicate if the the text object should be attached to a zone or map. More... | |
void | TecUtilTextSetColor (Text_ID TID, ColorIndex_t Color) |
Set the color of a text object. More... | |
void | TecUtilTextSetFont (Text_ID TID, Font_e Font) |
Set the font for a text object. More... | |
void | TecUtilTextSetHeight (Text_ID TID, double Height) |
Set the character height for a text object. More... | |
void | TecUtilTextBoxSetType (Text_ID TID, TextBox_e TextBoxType) |
Set the type of the box surrounding the text object. More... | |
void | TecUtilTextBoxSetMargin (Text_ID TID, double Margin) |
Set the margin between the text and the box surrounding the text object. More... | |
void | TecUtilTextBoxSetLineThickness (Text_ID TID, double LineThickness) |
Set the line thickness of the box surrounding the text object. More... | |
void | TecUtilTextBoxSetColor (Text_ID TID, ColorIndex_t BoxColor) |
Set the line color for the box surrounding a text object. More... | |
void | TecUtilTextBoxSetFillColor (Text_ID TID, ColorIndex_t BoxFillColor) |
Set the fill color of the box surrounding a text object. More... | |
void | TecUtilTextSetAngle (Text_ID TID, double Angle) |
Set the angle in degrees for a text object. More... | |
void | TecUtilTextSetAnchor (Text_ID TID, TextAnchor_e Anchor) |
Set the anchor style for a text object. More... | |
void | TecUtilTextSetLineSpacing (Text_ID TID, double LineSpacing) |
Set the line spacing for a text object. More... | |
void | TecUtilTextSetScope (Text_ID TID, Scope_e Scope) |
Set the scope of the text object. More... | |
Boolean_t | TecUtilTextSetMacroFunctionCmd (Text_ID TID, const char *Command) |
Set the macro function command associated with a text object. More... | |
Boolean_t | TecUtilTextSetString (Text_ID TID, const char *TextString) |
Set the text string for a text object. More... | |
void | TecUtilGeomSetClipping (Geom_ID GID, Clipping_e Clipping) |
Set the clipping properties of a geometry. More... | |
void | TecUtilGeomSetAnchorPos (Geom_ID GID, double XPos, double YPos, double ZPos) |
Set the anchor position for a geometry. More... | |
void | TecUtilGeomSetXYZAnchorPos (Geom_ID GID, double XPos, double YPos, double ZPos) |
void | TecUtilGeomSetZoneOrMap (Geom_ID GID, EntIndex_t ZoneOrMap) |
Set the zone or Line-mapping attachment for a geometry. More... | |
void | TecUtilGeomSetAttached (Geom_ID GID, Boolean_t Attached) |
Set whether or not a geometry is attached to a zone or Line-mapping. More... | |
void | TecUtilGeomSetColor (Geom_ID GID, ColorIndex_t Color) |
Set the line color of a geometry. More... | |
void | TecUtilGeomSetFillColor (Geom_ID GID, ColorIndex_t FillColor) |
Set the fill color of a geometry. More... | |
void | TecUtilGeomSetIsFilled (Geom_ID GID, Boolean_t IsFilled) |
Set whether or not a geometry is filled with a color. More... | |
void | TecUtilGeomSetLinePattern (Geom_ID GID, LinePattern_e LinePattern) |
Set the line pattern for a geometry. More... | |
void | TecUtilGeomSetPatternLength (Geom_ID GID, double PatternLength) |
Set the line pattern length for a geometry. More... | |
void | TecUtilGeomSetLineThickness (Geom_ID GID, double LineThickness) |
Set the line thickness for a geometry. More... | |
void | TecUtilGeomEllipseSetNumPoints (Geom_ID GID, SmInteger_t NumEllipsePts) |
Set the number of points used to draw a circle or an ellipse geometry. More... | |
void | TecUtilGeomArrowheadSetStyle (Geom_ID GID, ArrowheadStyle_e ArrowheadStyle) |
Set the arrowhead style for a geometry. More... | |
void | TecUtilGeomArrowheadSetAttach (Geom_ID GID, ArrowheadAttachment_e ArrowheadAttachment) |
Set the arrowhead attachment for a geometry. More... | |
void | TecUtilGeomArrowheadSetSize (Geom_ID GID, double ArrowheadSize) |
Set the arrowhead size for a geometry. More... | |
void | TecUtilGeomArrowheadSetAngle (Geom_ID GID, double ArrowheadAngle) |
Set the arrowhead angle for a geometry. More... | |
void | TecUtilGeomSetDrawOrder (Geom_ID GID, DrawOrder_e DrawOrder) |
Sets the draw order of a geometry. More... | |
Boolean_t | TecUtilGeomImageGetUseRatio (Geom_ID GID) |
Queries the state of the "preserve aspect ratio" toggle for an image geometry. More... | |
DrawOrder_e | TecUtilGeomGetDrawOrder (Geom_ID GID) |
Gets the draw order of a geometry. More... | |
void | TecUtilGeomSetScope (Geom_ID GID, Scope_e Scope) |
Set the scope for a geometry. More... | |
void | TecUtilGeomSetPositionCoordSys (Geom_ID GID, CoordSys_e CoordSys) |
Set the position coordinate system for a geometry. More... | |
Boolean_t | TecUtilGeomSetMacroFunctionCmd (Geom_ID GID, const char *Command) |
Set the macro function command for a geometry. More... | |
void | TecUtilDropOpeningBanner (void) |
Forces drop of opening banner. More... | |
Text_ID | TecUtilTextCreate (CoordSys_e PositionCoordSys, double PosX, double PosY, Units_e HeightUnits, double Height, const char *Text) |
Creates a text object. More... | |
Text_ID | TecUtilText3DCreate (double PosX, double PosY, double PosZ, Units_e HeightUnits, double Height, const char *Text) |
Create a 3D text label in Tecplot. More... | |
Geom_ID | TecUtilGeomSquareCreate (CoordSys_e PositionCoordSys, double CornerX, double CornerY, double Size) |
Create a square geometry. More... | |
Geom_ID | TecUtilGeomCircleCreate (CoordSys_e PositionCoordSys, double CenterX, double CenterY, double Radius) |
Create a circle geometry. More... | |
Geom_ID | TecUtilGeomRectangleCreate (CoordSys_e PositionCoordSys, double CornerX, double CornerY, double Width, double Height) |
Create a rectangle geometry. More... | |
Geom_ID | TecUtilGeomEllipseCreate (CoordSys_e PositionCoordSys, double CenterX, double CenterY, double HAxis, double VAxis) |
Create an ellipse geometry. More... | |
Geom_ID | TecUtilGeom2DPolylineCreate (CoordSys_e PositionCoordSys, double *PtsX_Array, double *PtsY_Array, LgIndex_t NumPts) |
Create a 2-D polyline geometry. More... | |
Geom_ID | TecUtilGeom3DPolylineCreate (double *PtsX_Array, double *PtsY_Array, double *PtsZ_Array, LgIndex_t NumPts) |
Create a 3-D polyline geometry. More... | |
Geom_ID | TecUtilGeom2DMPolyCreate (CoordSys_e PositionCoordSys, LgIndex_t NumPolys, LgIndex_t *NumPointsInPolylines_Array) |
Create a 2-D multi-polyline geometry. More... | |
Geom_ID | TecUtilGeom3DMPolyCreate (LgIndex_t NumPolys, LgIndex_t *NumPointsInPolylines_Array) |
Create a 3-D multi-polyline geometry. More... | |
Geom_ID | TecUtilGeomArcCreate (CoordSys_e PositionCoordSys, double CenterX, double CenterY, double Radius, double StartAngle, double EndAngle) |
Create a 2-D arc. More... | |
Geom_ID | TecUtilGeom2DLineSegmentCreate (CoordSys_e PositionCoordSys, double X1, double Y1, double X2, double Y2) |
Create a 2-D line geometry. More... | |
Geom_ID | TecUtilGeom3DLineSegmentCreate (double X1, double Y1, double Z1, double X2, double Y2, double Z2) |
Create a 3-D line. More... | |
LgIndex_t | TecUtilGeomMPolyGetPolylineCnt (Geom_ID GID) |
Get the number of polylines in a multi-polyline geometry. More... | |
LgIndex_t | TecUtilGeomPolyGetPointCount (Geom_ID GID) |
Get the number of points in a polyline geometry. More... | |
LgIndex_t | TecUtilGeomMPolyGetPointCount (Geom_ID GID, LgIndex_t PolyNum) |
Get information about the number of points in a polyline of a multi-polyline geometry. More... | |
void | TecUtilGeom2DMPolyGetPoint (Geom_ID GID, LgIndex_t PolyNum, LgIndex_t PointIndex, double *X, double *Y) |
Gets the 2-D (X,Y) value of point in a 2-D multi-polyline geometry. More... | |
void | TecUtilGeom2DPolylineGetPoint (Geom_ID GID, LgIndex_t PointIndex, double *X, double *Y) |
Get a point (X,Y) of a 2-D polyline. More... | |
void | TecUtilGeom2DMPolySetPoint (Geom_ID GID, LgIndex_t PolyNum, LgIndex_t PointIndex, double X, double Y) |
Set the 2-D (X,Y) value of point in a 2-D multi-polyline geometry. More... | |
void | TecUtilGeom2DPolylineSetPoint (Geom_ID GID, LgIndex_t PointIndex, double X, double Y) |
Set a point (X,Y) of a 2-D polyline. More... | |
void | TecUtilGeom2DMPolySetPolyline (Geom_ID GID, LgIndex_t PolyNum, double *X_Array, double *Y_Array) |
Set the points for a polyline in a 2-D multi-polyline geometry. More... | |
void | TecUtilGeom3DMPolyGetPoint (Geom_ID GID, LgIndex_t PolyNum, LgIndex_t PointIndex, double *X, double *Y, double *Z) |
Get the 3-D (X, Y, Z) value of point in a 3-D multi-polyline geometry. More... | |
void | TecUtilGeom3DPolylineGetPoint (Geom_ID GID, LgIndex_t PointIndex, double *X, double *Y, double *Z) |
Get a point (X, Y, Z) of a 3-D polyline. More... | |
void | TecUtilGeom3DMPolySetPoint (Geom_ID GID, LgIndex_t PolyNum, LgIndex_t PointIndex, double X, double Y, double Z) |
Set the 3-D (X, Y, Z) value of point in a 3-D multi-polyline geometry. More... | |
void | TecUtilGeom3DPolylineSetPoint (Geom_ID GID, LgIndex_t PointIndex, double X, double Y, double Z) |
Set a point (X, Y, Z) of a 3-D polyline. More... | |
void | TecUtilGeom3DMPolySetPolyline (Geom_ID GID, LgIndex_t PolyNum, double *X_Array, double *Y_Array, double *Z_Array) |
Set the points for a polyline in a 3-D multi-polyline geometry. More... | |
double | TecUtilGeomCircleGetRadius (Geom_ID GID) |
Return the radius of a circle geometry. More... | |
void | TecUtilGeomCircleSetRadius (Geom_ID GID, double Radius) |
Set the radius of a circle geometry. More... | |
double | TecUtilGeomSquareGetSize (Geom_ID GID) |
Get the size of a square geometry. More... | |
void | TecUtilGeomSquareSetSize (Geom_ID GID, double Size) |
Set the size of a square geometry. More... | |
void | TecUtilGeomRectangleGetSize (Geom_ID GID, double *Width, double *Height) |
Get the width and height of a rectangle geometry. More... | |
void | TecUtilGeomRectangleSetSize (Geom_ID GID, double Width, double Height) |
Set the width and height of a rectangle geometry. More... | |
void | TecUtilGeomEllipseGetSize (Geom_ID GID, double *HAxis, double *VAxis) |
Get length of the axes of an ellipse. More... | |
void | TecUtilGeomEllipseSetSize (Geom_ID GID, double HAxis, double VAxis) |
Set the length of the axes of an ellipse. More... | |
char * | TecUtilGetCurLayoutFName (void) |
Get the current layout file name. More... | |
void | TecUtilHelp (const char *HelpFileOrURL, Boolean_t GoToID, int HelpID) |
Use either WinHelp or a browser to view help information. More... | |
Boolean_t | TecUtilDataSetLockOn (const char *LockString) |
Lock the data set attached to the current frame. More... | |
Boolean_t | TecUtilDataSetLockOff (const char *LockString) |
Unlock the data set attached to the current frame. More... | |
Boolean_t | TecUtilDataSetIsLocked (char **LockString) |
Query to see of the data set attached to the current frame is locked. More... | |
void | TecUtilPleaseWait (const char *WaitMessage, Boolean_t DoWait) |
Shows or hides the wait cursor and optionally displayes a wait message. More... | |
Boolean_t | TecUtilUndoCanUndo (void) |
Determine if you can undo the last operation. More... | |
Boolean_t | TecUtilUndoDoUndo (void) |
Undo the last opeartion. More... |
|
|
|
Value: for (Member = TecUtilSetGetNextMember(Set, TECUTILSETNOTMEMBER); \ Member != TECUTILSETNOTMEMBER; \ Member = TecUtilSetGetNextMember(Set, Member)) |
|
Query Tecplot's list of loaded addons for the specified addon's version and author strings.
INTEGER*4 FUNCTION TecUtilAddOnGetRegisteredInfo( To find out if the addon Circular Stream is loaded into Tecplot:
char *version = NULL; char *author = NULL; if (TecUtilAddOnGetRegisteredInfo("Circular Stream".&version, &author)) { / * Circular Stream loaded, do something special * / DeallocString(&version); DeallocString(&author); } |
|
Register information about your addon with Tecplot. This information will mainly be used in an addon information dialog accessible via the Help menu option. Note: This function must be called from within your addon initialization function, and cannot be called from anywhere else.
SUBROUTINE TecUtilAddOnRegister( * To register an addon called Circular Stream from Tecplot, Inc.: AddOn_pa AddOnID; void InitTecAddOn(void) { TecUtilLockOn(); AddOnID=TecUtilAddOnRegister(100,"Circular Stream", "1.0 - 05/01/1998", "Tecplot, Inc."); / * other initialization * / TecUtilLockOff(); } |
|
|
|
Deallocate an arbituary array previously allocated by Tecplot.
SUBROUTINE TecUtilArrayDealloc(Array) See TecGUIListGetSelectedItems for a complete example. |
|
Convert from one measurement system to another.
REAL*8 FUNCTION TecUtilConvertUnits( To create a line with a line thickness of three points:
Geom_ID g; double frame_units; frame_units = TecUtilConvertUnits(Units_Point, Units_Frame, 3.); g = TecUtilGeom2DLineSegmentCreate(CoordSys_Frame, 5., 5., 95., 95.); TecUtilGeomSetLineThickness(g, frame_units) |
|
Convert the specified horizontal dimension from one coordinate system to another.
REAL*8 FUNCTION TecUtilConvertXDimension( Find the size of the current frame in screen pixels.
double X, Y, Width, Height; / * get frame width and height in inches * / TecUtilFrameGetPosAndSize(&X,&Y, &Width, &Height); / * convert width and height to screen coordinates (pixels) * / Width = TecUtilConvertXDimension(CoordSys_Paper, CoordSys_Screen, Width); Height = TecUtilConvertYDimension(CoordSys_Paper, CoordSys_Screen, Height); |
|
Convert the specified X-coordinate value from one coordinate system to another.
REAL*8 FUNCTION TecUtilConvertXPosition( Determine the position on the paper of a text label. Assume the Text_ID has already been obtained (See TecUtilPickListxxx functions or TecUtilTextxxx functions for examples on how to obtain a Text_ID).
Text_ID TID; double XPos,YPos; double PaperXPos,PaperYPos; ... Text_ID obtained.... TecUtilTextGetXYPos(TID,&XPos,&YPos); PaperXPos = TecUtilConvertXPosition(TecUtilTextGetPositionCoordSys(TID), CoordSys_Paper, XPos); PaperYPos = TecUtilConvertYPosition(TecUtilTextGetPositionCoordSys(TID), CoordSys_Paper, YPos); |
|
Convert the specified vertical dimension from one coordinate system to another.
REAL*8 FUNCTION TecUtilConvertYDimension( |
|
Convert the specified Y-coordinate value from one specified coordinate system to another specified coordinate system.
REAL*8 FUNCTION TecUtilConvertYPosition( |
|
Registers an extended curve fit addon. This will add an option to the single selection list launched by the Curve Type/Extended option on the Curves page of the Plot Attributes dialog.
INTEGER*4 FUNCTION TecUtilCurveRegisterExtCrvFit( |
|
Branch the connectivity information. Returns False if out of memory.
INTEGER*4 FUNCTION TecUtilDataConnectBranchShared(Zone) |
|
Returns the share count for connectivity for the given zone. This is the number of times the connectivity is shared. 1 means not shared (shared once), 2 means two zones share it, etc.
SUBROUTINE TecUtilDataConnectShare( |
|
Set the node index for a particular corner of a finite-element. To use this function you must have already obtained the handle to the node map. Be sure to call TecUtilStateChanged after using this function.
SUBROUTINE TecUtilDataNodeSetByRef( Set the first two nodes of the 43rd element of zone 5 to be 127 and 128 respectively:
Set_pa altered_zones; NodeMap_pa nm; nm = TecUtilDataNodeGetRef(5); if ( nm ) { TecUtilDataNodeSetByRef(nm, 43, 1, 127); TecUtilDataNodeSetByRef(nm, 43, 2, 128); / * inform Tecplot of node map change * / altered_zones = TecUtilSetAlloc(TRUE); TecUtilSetAddMember(altered_zones, 5); TecUtilStateChanged(StateChange_NodeMapsAltered, (ArbParam_t)altered_zones); TecUtilSetDealloc(&altered_zones); } |
|
Set the node index for a particular corner of a finite-element. This function does not require you to obtain the handle to the node map as does TecUtilDataNodeSetByRef, however, this function is not very efficient. Use TecUtilDataValueSetByRef if you are setting multiple nodes for the same zone. You do not need to call TecUtilStateChanged after calling this function as Tecplot does that for you.
SUBROUTINE TecUtilDataNodeSetByZone( Set the third node of the 43rd element of zone 5 to be 129:
TecUtilDataNodeSetByRef(5, 43, 3, 129); |
|
Adds a command to the data journal.
INTEGER*4 FUNCTION TecUtilDataSetAddJournalCommand( |
|
|
|
Adds a raw macro command to the data journal.
INTEGER*4 FUNCTION TecUtilDataSetAddRawJournalCom(Command) |
|
Add a variable to the current data set. Call TecUtilStateChanged after adding a variable. This function is superceded by TecUtilDataSetAddVarX.
if ( TecUtilDataSetAddVar("New Variable", NULL) ) { / * New variable is always last variable. * / EntIndex_t newvar; TecUtilDataSetGetInfo(NULL, NULL, &newvar); / * Fill new var with values for all zones. * / . . . / * Inform Tecplot a variable has been added. * / TecUtilStateChanged(StateChange_VarsAdded, (ArbParam_t)NULL); } |
|
Add a variable to the current data set. Make sure and call TecUtilStateChanged after adding variables.
INTEGER*4 FUNCTION TecUtilDataSetAddVarX(ArgListPtr) Add a variable called "newvar" to the dataset.
ArgList_pa ArgList; FieldDataType_e *VarDataType; / * dimension by zone * / ValueLocation_e *ValueLocation; / * dimension by zone * / TecUtilLockStart(AddOnID); ... / * * Allocate and populate VarDataType and ValueLocation * with the appropriate value for each zone. * / ... / * collect the function arguments * / ArgList = TecUtilArgListAlloc(); TecUtilArgListAppendString(ArgList, SV_NAME, "newvar"); TecUtilArgListAppendArray(ArgList, SV_VARDATATYPE, (void *)VarDataType); TecUtilArgListAppendArray(ArgList, SV_VALUELOCATION, (void *)ValueLocation); TecUtilArgListAppendInt(ArgList, SV_SHAREVARWITHALLZONES, FALSE); / * add the variable for each zone * / TecUtilDataSetAddVarX(ArgList); / * cleanup * / TecUtilArgListDealloc(&ArgList); / * Inform Tecplot that a variable was added * / VarsAdded = TecUtilSetAlloc(FALSE); if (VarsAdded) { EntIndex_t NumVars; TecUtilDataSetGetInfo((char **)NULL, (EntIndex_t *)NULL, &NumVars); TecUtilSetAddMamber(VarsAdded,NumVars,FALSE); TecUtilStateChanged(StateChange_VarsAdded, (ArbParam_t)VarsAdded); TecUtilSetDealloc(&VarsAdded); } ... / * cleanup VarDataType and ValueLocation allocations * / TecUtilLockFinish(AddOnID); |
|
Add a zone to the data set attached to the current frame. This function call does not load any data into the zone. In the case of finite-element zones, this function also does not assign values to the connectivity list. This function only allocates space for the zone. Call TecUtilStateChanged after adding a zone.
if ( TecUtilDataSetAddZone("New Ordered Zone", 10, 10, 1, ZoneType_Ordered, NULL) ) { Set_pa zones_added = TecUtilSetAlloc(TRUE); / * new zone is always last zone * / EntIndex_t newzone; TecUtilDataSetGetInfo(NULL, &newzone, NULL); / * fill new zone with values for all variables * / . . . / * inform Tecplot of new zone * / TecUtilSetAddMember(zones_added, newzone, TRUE); TecUtilStateChanged(StateChange_ZonesAdded, (ArbParam_t)zones_added); TecUtilSetDealloc(&zones_added); } |
|
Add a zone to the current data set. This function was extended from TecUtilDataSetAddZone() to allow addition of zones in locations where zombie zones currently exist in a data set. For a simpler interface use TecUtilDataSetAddZone() instead.
INTEGER*4 FUNCTION TecUtilDataSetAddZoneX(ArgListPtr) Add a 10 by 20 ordered zone as zone number 3.
Arglist_pa ArgList; TecUtilLockStart(AddOnID); ArgList = TecUtilArgListAlloc(); TecUtilArgListAppendString(ArgList, SV_NAME, "New Zone"); TecUtilArgListAppendInt(ArgList, SV_ZONE, 3); TecUtilArgListAppendInt(ArgList, SV_ZONETYPE, (ArbParam_t)ZoneType_Ordered); TecUtilArgListAppendInt(ArgList, SV_IMAX, 10); TecUtilArgListAppendInt(ArgList, SV_JMAX, 20); TecUtilDataSetAddZoneX(ArgList); TecUtilArgListDealloc(&ArgList); TecUtilLockFinish(AddOnID); |
|
Create a new data set and attach it to the current frame. This only allocates space for a data set specification. You must immediately begin to add zones to the data set by calling TecUtilDataSetAddZone after creating a data set.
INTEGER*4 FUNCTION TecUtilDataSetCreate( Create a data set with two variables:
StringList_pa sl = TecUtilStringListAlloc(); TecUtilStringListAppendString(sl,"V1"); / * first variable * / TecUtilStringListAppendString(sl,"V2"); / * second variable * / if ( TecUtilDataSetCreate("My Data Set",sl, TRUE)); { / * Immediately call TecUtilDataSetAddZone() here * / } TecUtilStringListDealloc(&sl); |
|
Get the variable load mode for the current data set.
INTEGER*4 FUNCTION TecUtilDataSetGetVarLoadMode() Get the variable load mode for the current data set:
VarLoadMode_e VarLoadMode; if ( TecUtilDataSetIsAvailable() ) { VarLoadMode = TecUtilDataSetGetVarLoadMode(); ... } |
|
Query to see of the data set attached to the current frame is locked.
INTEGER*4 FUNCTION TecUtilDataSetIsLocked( |
|
Unlock the data set attached to the current frame.
INTEGER*4 FUNCTION TecUtilDataSetLockOff(LockString) |
|
Lock the data set attached to the current frame.
INTEGER*4 FUNCTION TecUtilDataSetLockOn(LockString) Lock the data set using the identifier "banana."
Boolean_t IsBananaLocked = FALSE; if (!TecUtilLockIsOn((char **)NULL)) { IsLocked = TecUtilDataSetLockOn("banana"); } ... if (IsBananaLocked) TecUtilDataSetLockOff("banana"); |
|
Stops Tecplot for altering or marking the loaded dataset.
SUBROUTINE TecUtilDataSetSuspendMarking(DoSuspend) Set the Marking property to be TRUE:
|
|
Allocates the space needed for the variable. The function is only applicable for defered variable creation. See TecUtilDataSetAddZoneX's SV_DEFERVARCREATION option for details.
INTEGER*4 FUNCTION TecUtilDataValueAlloc( Allocate the first variable of zone 3. Note that this example is only valid if the zone was added with the deferred variable creation option set to true.
IsOk = TecUtilDataValueAlloc(3, 1);
|
|
Copies the specified number of values from the base of the source value array to the destination field data starting at the specified offset. Note that the source value array must be of the same data type as the destination field data.
|
|
Branch off a shared variable. The specified variable of the specified zone is branched so it is no longer shared with anything.
INTEGER*4 FUNCTION TecUtilDataValueBranchShared( Branch variable 2 in zone 1.
TecUtilDataValueBranchShared(1, 2); |
|
Indicates if Tecplot can map the requested variable to a file. In order to map a Tecplot variable to a file certain requirements must be met. Some of them are checked by this function while others rely on Scout's honor. The following conditions are checked by this function and must be true before a variable can be mapped to a file:
|
|
Maps the Tecplot variable to the file. A call to TecUtilDataValueCanMemMapData must have preceded the call to this function to determine if the variable can be mapped. The file must at least be open for reading at the time of this call but does not need to remain open after the variable is mapped. However, it is the responsibility of the add-on to ensure that the file remains present and unaltered while Tecplot maintains a reference to this mapping as Tecplot uses the file as it's backing store for the data.
|
|
Assign a value to a field variable at a specific position. If the zone referenced is IJ- or IJK-ordered, the position is calculated by treating the two- or three-dimensional array as a one-dimensional array. Be sure to call TecUtilStateChanged after changing field data in this way.
SUBROUTINE TecUtilDataValueSetByRef( Set the first two values of the second variable of zone 5 to be 1.25 and 1.35 respectively:
Set_pa altered_vars; FieldData_pa fd; fd = TecUtilDataValueGetRef(5, 2); if ( fd ) { TecUtilDataValueSetByRef(fd, 1, 1.25); TecUtilDataValueSetByRef(fd, 2, 1.35); / * inform Tecplot of var value change * / altered_vars = TecUtilSetAlloc(TRUE); TecUtilSetAddMember(altered_vars, var); TecUtilStateChanged(StateChange_VarsAltered, (ArbParam_t)altered_vars); TecUtilSetDealloc(&altered_vars); } |
|
Sets the properties of the variable so that it is shared between source and destination zones (using the source for values). Both zones must have the same structure (both Ordered with the same I,J, and K values; or both are finite-elements with the same element type and same number of nodes.
SUBROUTINE TecUtilDataValueShare( Set the first variable of zone 3 to be shared with zone 2:
TecUtilDataValueShare(2, 3, 1); |
|
Set the current value of the Percent Done dialog and check to see if the user has clicked Cancel. Note: This function cannot be called when Tecplot is running in batch mode.
INTEGER*4 FUNCTION TecUtilDialogCheckPercentDone(PercentDone) Launch, check, and destroy Percent Done dialog.
TecUtilDialogLaunchPercentDone("Calculate",TRUE); / * do some processing * / if (!TecUtilDialogCheckPercentDone(35)) { / * user pressed cancel button * / } else { / * do some more processing * / } / * finished processing * / TecUtilDialogDropPercentDone(); |
|
Drop the Percent Done dialog.
SUBROUTINE TecUtilDialogDropPercentDone() |
|
Launch a dialog with an error message.
SUBROUTINE TecUtilDialogErrMsg(Message) Display an error message:
TecUtilDialogErrMsg("File not found."); |
|
Launch a dialog to prompt the user for a file name Note: This function cannot be called when Tecplot is running in batch mode.
INTEGER*4 FUNCTION TecUtilDialogGetFileName( Prompt the user for a single file to read:
char *FileName = NULL; // should initialize to NULL if (TecUtilDialogGetFileName(SelectFileOption_ReadSingleFile, &FileName, "Text Files", "myfile.txt", "*.txt")) { . . . do something with FileName . . . // free Tecplot's copy TecUtilStringDealloc(&FileName); } |
|
Launch a dialog to prompt the user for one or more file names. It is assumed that the files selected will be opened only for reading. Use TecUtilGetFileName to open a file for writing. Note: This function cannot be called when Tecplot is running in batch mode.
INTEGER*4 FUNCTION TecUtilDialogGetFileNames( Prompt the user for one or more files to read:
StringList_pa FileNames; = NULL; StringList_pa DefaultName = TecUtilStringListAlloc(); TecUtilStringListAppendString(DefaultName,"myfile.txt"); if (TecUtilDialogGetFileNames(SelectFileOption_ReadMultiFile, &FileNames, "Text Files", DefaultName, "*.txt")) { // get the first file name char *f = TecUtilStringListGetString(FileNames,1); . . . do something with FileNames . . . TecUtilStringDealloc(&f); // and free Tecplot's copy TecUtilStringListDealloc(FileNames);// done with str list } TecUtilStringListDealloc(&DefaultName); // done with str list |
|
Browse for a folder name. Launch a dialog to prompt the user for a folder name
INTEGER*4 FUNCTION TecUtilDialogGetFolderName( Prompt the user for a single folder to read:
char *FolderName = NULL; // must initialize to NULL if (TecUtilDialogGetFolderName("Please select a folder", &FolderName) { . . . do something with FolderName . . . // free Tecplot's copy TecUtilStringDealloc(&FolderName); } |
|
Launch the Percent Done dialog.
SUBROUTINE TecUtilDialogLaunchPercentDone( |
|
Update the text in the Percent Done dialog.
SUBROUTINE TecUtilDialogSetPercentDoneText(Text) Update the text in the Percent Done dialog to say "Phase II."
TecUtilDialogSetPercentDoneText("Phase II"); |
|
Send an event to the Tecplot event dispatcher. This can be used to simulate a user action in the work area.
SUBROUTINE TecUtilDispatchWorkAreaEvent( Simulate a mouse button one click.
|
|
Forces drop of opening banner. If this function is not called, the opening banner will stay up until all addons are loaded.
SUBROUTINE TecUtilDropOpeningBanner() |
|
If the current frame is 2D or 3D, change the mouse mode to be the extract discrete points tool and instruct Tecplot to call a different function when the user completes an extract-like operation in the work area. This function callback will remain in effect until the user changes mouse modes in the Tecplot interface.
INTEGER*4 FUNCTION TecUtilExtractInstallCallback( Change the mouse mode to be the Extract Discrete Points tool and install an extract callback function.
void MyExtractFunction(LgIndex_t NumPts, double *XValues, double *YValues) { / * do something * / } . . . / * elsewhere in the addon * / TecUtilExtractInstallCallback(MyExtractFunction, "Status line info for my function"); |
|
Download a file given a valid URL.
INTEGER*4 FUNCTION TecUtilFileDownloadURL( |
|
Convenience function that will determine if a supplied string uses valid URL syntax..
INTEGER*4 FUNCTION TecUtilFileIsURL(URLFName) |
|
Upload a file given a valid URL.
INTEGER*4 FUNCTION TecUtilFileUploadURL( |
|
Create a 2-D line geometry. Use the ID obtained from this function to set geometry attributes such as line style and color using the TecUtilGeomSetxxx functions.
SUBROUTINE TecUtilGeom2DLineSegmentCreate( Create a 2-D line geometry from (0.1, 0.2) to (0.5, 0.6):
Geom_ID G; G = TecUtilGeom2DLineSegmentCreate(CoordSys_Grid, .1,.2,.5,.6); |
|
Create a 2-D multi-polyline geometry. After creating the 2-D multi-polyline geometry, you must assign values to the points in it with TecUtilGeom2DPolylineSetPoint or TecUtilGeom2DMPolySetPolyline. Use the ID obtained from this function to set geometry attributes such as line style and color using the TecUtilGeomSetxxx functions.
INTEGER*4 FUNCTION TecUtilGeom2DMPolyCreate( Create a 2-D multi-polyline with two polylines. The first polyline has three points, the second has two:
LgIndex_t pts_per_line[2] = { 3, Z }; / * two polylines * / double x_polyline_1 = { 0.0, 1.0, 2.0 }; / * three points * / double y_polyline_1 = { 0.0, 1.0, 0.0 }; double x_polyline_2 = { 1.0, 2.0 }; / * two points * / double y_polyline_2 = { 1.0, 0.0 }; Geom_ID g; g = TecUtilGeom2DMPolyCreate(CoordSys_Grid, Z, pts_per_line); TecUtilGeom2DMPolySetPolyline(g, 1, x_polyline_1, y_polyline_1); TecUtilGeom2DMPolySetPolyline(g, 2, x_polyline_2, y_polyline_2); |
|
Gets the 2-D (X,Y) value of point in a 2-D multi-polyline geometry.
SUBROUTINE TecUtilGeom2DMPolyGetPoint( Get the value of the tenth point in the second polyline of a 2-D multi-polyline geometry:
double X,Y; extern Geom_ID g; / * assume this was allocated somewhere * / TecUtilGeom2DMPolyGetPoint(g,2,10,&X,&Y); |
|
Set the 2-D (X,Y) value of point in a 2-D multi-polyline geometry.
SUBROUTINE TecUtilGeom2DMPolySetPoint( Set the value of the tenth point in the second polyline of a 2-D multi-polyline geometry:
extern Geom_ID g; / * assume this was allocated somewhere * / TecUtilGeom2DMPolySetPoint(g,2,10,1.5,2.2);/ *set to (1.5,2.2)* / |
|
Set the points for a polyline in a 2-D multi-polyline geometry.
SUBROUTINE TecUtilGeom2DMPolySetPolyline( |
|
Create a 2-D polyline geometry. Use the ID obtained from this function to set geometry attributes such as line style and color using the TecUtilGeomSetxxx functions. By default, the anchor position is set to (0, 0). All points are drawn relative to the anchor position. The anchor position can be changed using TecUtilGeomSetXYZAnchorPos.
SUBROUTINE TecUtilGeom2DPolylineCreate( Create a 2-D polyline with four points:
double X[4] = {.2,.5,.6,.4}; / *x coords of the polyline* / double Y[4] = {.2,.5,.1,.7}; / *y coords of the polyline* / Geom_ID G; G = TecUtilGeom2DPolylineCreate(CoordSys_Grid,X,Y,4); |
|
Get a point (X,Y) of a 2-D polyline.
SUBROUTINE TecUtilGeom2DPolylineGetPoint( Get the second point of a 2-D polyline geometry:
double X,Y; extern Geom_ID g; / * allocated somewhere else * / TecUtilGeom2DPolylineGetPoint(g,2,&X,&Y); |
|
Set a point (X,Y) of a 2-D polyline.
SUBROUTINE TecUtilGeom2DPolylineSetPoint( Set the second point of a 2-D polyline geometry:
extern Geom_ID g; / * allocated somewhere else * / / * set to (1.1,2.5) * / TecUtilGeom2DPolylineSetPoint(g,2,1.1,2.5); |
|
Create a 3-D line. Use the ID obtained from this function to set geometry attributes such as line style and color using the TecUtilGeomSetxxx functions. All coordinates are in grid coordinates.
SUBROUTINE TecUtilGeom3DLineSegmentCreate( Create a 3-D line geometry from (0.1, 0.2, 0.2) to (0.5, 0.6, 0.1):
Geom_ID G; G = TecUtilGeom3DLineSegmentCreate(.1,.2,.2,.5,.6,.1); |
|
Create a 3-D multi-polyline geometry. After creating the 3-D multi-polyline, you must assign values to the points in it with either TecUtilGeom3DMPolySetPoint or TecUtilGeom3DMPolySetPolyline. Use the ID obtained from this function to set geometry attributes such as line style and color using the TecUtilGeomSetxxx functions.
SUBROUTINE TecUtilGeom3DMPolyCreate( Create a 3-D multi-polyline with 2 polylines. The first polyline has three points, the second has two:
LgIndex_t pts_per_line[2] = { 3, 2 }; / * two polylines * / double x_polyline_1 = { 0.0, 1.0, 2.0 }; / * three points * / double y_polyline_1 = { 0.0, 1.0, 0.0 }; double z_polyline_1 = { 0.0, 0.5, 0.0 }; double x_polyline_2 = { 1.0, 2.0 }; / * two points * / double y_polyline_2 = { 1.0, 0.0 }; double z_polyline_2 = { 0.5, 0.5 }; Geom_ID g; g = TecUtilGeom3DMPolyCreate(CoordSys_Grid, 2, pts_per_line); TecUtilGeom3DMPolySetPolyline(g, 1, x_polyline_1, y_polyline_1, z_polyline_1); TecUtilGeom3DMPolySetPolyline(g, 2, x_polyline_2, y_polyline_2, z_polyline_2); |
|
Get the 3-D (X, Y, Z) value of point in a 3-D multi-polyline geometry.
SUBROUTINE TecUtilGeom3DMPolyGetPoint( Get the value of the tenth point in the second 3-D polyline of a multi-polyline geometry:
double X,Y,Z; extern Geom_ID g; / * assume this was allocated somewhere * / TecUtilGeom3DMPolyGetPoint(g,2,10,&X,&Y,&Z); |
|
Set the 3-D (X, Y, Z) value of point in a 3-D multi-polyline geometry.
SUBROUTINE TecUtilGeom3DMPolySetPoint( Set the value of the tenth point in the second polyline of a 3-D multi-polyline geometry:
extern Geom_ID g; / * assume this was allocated somewhere * / / * set to (2.3,5.4,1.1) * / TecUtilGeom3DMPolySetPoint(g,2,10,2.3,5.4,1.1); |
|
Set the points for a polyline in a 3-D multi-polyline geometry.
SUBROUTINE TecUtilGeom3DMPolySetPolyline( |
|
Create a 3-D polyline geometry. Use the ID obtained from this function to set geometry attributes such as line style and color using the TecUtilGeomSetxxx function. By default, the anchor position is set to (0, 0). All points are drawn relative to the anchor position. The anchor position can be changed using TecUtilGeomSetXYZAnchorPos. All units are in grid coordinates.
SUBROUTINE TecUtilGeom3DPolylineCreate( Create a 3-D polyline with four points:
double X[4] = {.2,.5,.6,.4}; / *x coords of the polyline* / double Y[4] = {.2,.5,.1,.7}; / *y coords of the polyline* / double Z[4] = {.1,.2,.3,.4}; / *z coords of the polyline* / Geom_ID G; G = TecUtilGeom3DPolylineCreate(X,Y,Z,4) |
|
Get a point (X, Y, Z) of a 3-D polyline.
SUBROUTINE TecUtilGeom3DPolylineGetPoint( Get the second point of a 3-D polyline geometry:
double X,Y,Z; extern Geom_ID g; / * allocated somewhere else * / TecUtilGeom3DPolylineGetPoint(g,2,&X,&Y,&Z); |
|
Set a point (X, Y, Z) of a 3-D polyline.
SUBROUTINE TecUtilGeom3DPolylineSetPoint( Set the second point of a 3-D polyline geometry:
extern Geom_ID g; / * allocated somewhere else * / TecUtilGeom3DPolylineSetPoint(g,2,1.1,2.5,1.0); / * set to (1.1,2.5,1.0) * / |
|
Create a 2-D arc. The arc is currently implemented as a 2-D polyline geometry, thus, the type of object returned is a 2-D polyline geometry object. Use the ID obtained from this function to set geometry attributes such as line style and color using the TecUtilGeomSetxxx functions.
SUBROUTINE TecUtilGeomArcCreate( Create an arc of a circle of radius 0.5 centered at (0, 0) with an arc angle from 35 to 90 degrees (a 2-D polyline with 56 points, one point at each degree between 35 and 90):
Geom_ID G; G = TecUtilGeomArcCreate(CoordSys_Grid, .3,.3,.5,35,90); |
|
Get the geometry arrowhead angle.
REAL*8 FUNCTION TecUtilGeomArrowheadGetAngle(GID) |
|
Get the geometry arrowhead attachment.
INTEGER*4 FUNCTION TecUtilGeomArrowheadGetAttach(GID) |
|
Get the geometry arrowhead size.
REAL*8 FUNCTION TecUtilGeomArrowheadGetSize(GID) |
|
Get the geometry arrowhead style.
INTEGER*4 FUNCTION TecUtilGeomArrowheadGetStyle(GID) |
|
Set the arrowhead angle for a geometry.
SUBROUTINE TecUtilGeomArrowheadSetAngle( Create a line with a 15 degree arrowhead at the end:
Geom_ID g; g = TecUtilGeom2DLineSegmentCreate(CoordSys_Frame, 5., 5., 95., 95.); TecUtilGeomArrowheadSetAttach(g, ArrowheadAttach_AtEnd); TecUtilGeomArrowheadSetAngle(g, 15.); |
|
Set the arrowhead attachment for a geometry.
SUBROUTINE TecUtilGeomArrowheadSetAttach( Create a line with arrowheads at both ends:
Geom_ID g; g = TecUtilGeom2DLineSegmentCreate(CoordSys_Frame, 5., 5., 95., 95.); TecUtilGeomArrowheadSetAttach(g, ArrowheadAttach_AtBothEnds); |
|
Set the arrowhead size for a geometry.
SUBROUTINE TecUtilGeomArrowheadSetSize( Create a line with a ten percent (frame units) arrowhead at the end:
Geom_ID g; g = TecUtilGeom2DLineSegmentCreate(CoordSys_Frame, 5., 5., 95., 95.); TecUtilGeomArrowheadSetAttach(g, ArrowheadAttach_AtEnd); TecUtilGeomArrowheadSetSize(g, 10.); |
|
Set the arrowhead style for a geometry.
SUBROUTINE TecUtilGeomArrowheadSetStyle( Create a line with a filled arrowhead at the end:
Geom_ID g; g = TecUtilGeom2DLineSegmentCreate(CoordSys_Frame, 5., 5., 95., 95.); TecUtilGeomArrowheadSetAttach(g, ArrowheadAttach_AtEnd); TecUtilGeomArrowheadSetStyle(g, Arrowhead_Filled); |
|
Create a circle geometry. Use the ID obtained from this function to set geometry attributes such as line style and color using the TecUtilGeomSetxxx functions. To set the number of points used to draw the circle use TecUtilGeomEllipseSetNumPoints.
SUBROUTINE TecUtilGeomCircleCreate( Create a circle at 0.5, 0.5, with a radius of 0.2:
Geom_ID G; G = TecUtilGeomCircleCreate(CoordSys_Grid,0.5,0.5,0.2); |
|
Return the radius of a circle geometry.
REAL*8 FUNCTION TecUtilGeomCircleGetRadius(GID) |
|
Set the radius of a circle geometry.
SUBROUTINE TecUtilGeomCircleSetRadius( Set the radius of a circle to one:
extern Geom_id g; / * must be a circle * / TecUtilGeomCircleSetRadius(g,1.0); |
|
Deletes the specified geometry object.
SUBROUTINE TecUtilGeomDelete(GID) Delete the first geometry object from the list of geometry objects maintained by the current frame.
Geom_ID Geom; Geom = TecUtilGeomGetBase(); if (Geom !=TECUTILBADID) { TecUtilGeomDelete(Geom); } |
|
Create an ellipse geometry. Use the ID obtained from this function to set geometry attributes such as line style and color using the TecUtilGeomSetxxx functions.
SUBROUTINE TecUtilGeomEllipseCreate( Create an ellipse centered at 0.5, 0.5, with a horizontal axis of length 0.2 and a vertical axis of length 0.3:
Geom_ID G; G = TecUtilGeomEllipseCreate(CoordSys_Grid, .5,.5,.2,.3); |
|
Get the number of points used to draw a circle or ellipse geometry.
INTEGER*4 FUNCTION TecUtilGeomEllipseGetNumPoints(GID) |
|
Get length of the axes of an ellipse.
SUBROUTINE TecUtilGeomEllipseGetSize( Get the length of the axes of an ellipse:
extern Geom_ID g; / * must be an ellipse * / double A,B; TecUtilGeomEllipseGetSize(g,&A,&B); |
|
Set the number of points used to draw a circle or an ellipse geometry.
SUBROUTINE TecUtilGeomEllipseSetNumPoints( Create a circle approximated by only five points. (This will look like a pentagon.)
Geom_ID g; g = TecUtilGeomCircleCreate(CoordSys_Frame, 50., 50., 25.); TecUtilGeomEllipseSetNumPoints(g, 5); |
|
Set the length of the axes of an ellipse.
SUBROUTINE TecUtilGeomEllipseSetSize( Set the major and minor axes of an ellipse:
extern Geom_ID g; / * must be an ellipse * / TecUtilGeomEllipseGetSize(g,2.0,1.0); |
|
Gets the anchor postion of the specified geometry..
SUBROUTINE TecUtilGeomGetAnchorPos( Get the achor position of a newly created circle:
double XPos, YPos, ZPos; Geom_ID Geom; Geom = TecUtilGeomCircleCreate(CoordSys_Grid, 4.0, 3.0, 5.0); TecUtilGeomGetAnchorPos(Geom, &XPos, &YPos, &ZPos); |
|
Function will get the clipping properties of a geometry.
INTEGER*4 FUNCTION TecUtilGeomGetClipping(GID) Create a red circle and set the clipping to "ClipToFrame":
Geom_ID g; Clipping_e clip; g = TecUtilGeomCircleCreate(CoordSys_Frame, 50., 50., 25.); clip = TecUtilGeomGetClipping(g); |
|
Get the geometry line color.
INTEGER*4 FUNCTION TecUtilGeomGetColor(GID) |
|
Gets the draw order of a geometry.
INTEGER*4 FUNCTION TecUtilGeomGetDrawOrder(GID) Get the draw order of a geometry:
DrawOrder_e DrawOrder = TecUtilGeomGetDrawOrder(GID); |
|
Get the geometry fill color. Use TecUtilGeomGetIsFilled to determine whether or not the geometry is filled with a color.
INTEGER*4 FUNCTION TecUtilGeomGetFillColor(GID) |
|
Determine if a geometry if filled.
INTEGER*4 FUNCTION TecUtilGeomGetIsFilled(GID) |
|
Get the line pattern of a geometry.
INTEGER*4 FUNCTION TecUtilGeomGetLinePattern(GID) |
|
Get the geometry line thickness.
REAL*8 FUNCTION TecUtilGeomGetLineThickness(GID) |
|
Get the geometry macro function command.
INTEGER*4 FUNCTION TecUtilGeomGetMacroFunctionCmd( |
|
Get the next geometry in the list of geometries attached to the current frame.
SUBROUTINE TecUtilGeomGetNext( Change all geometries in the current frame to be red:
Geom_ID g; g = TecUtilGeomGetBase(); while ( g != TECUTILBADID ) { TecUtilGeomSetColor(g, Red_C); g = TecUtilGeomGetNext(g); } |
|
Get the geometry line pattern length.
REAL*8 FUNCTION TecUtilGeomGetPatternLength(GID) |
|
Get the geometry position coordinate system.
INTEGER*4 FUNCTION TecUtilGeomGetPositionCoordSys(GID) |
|
Get the previous geometry in the list of geometries attached to the current frame.
SUBROUTINE TecUtilGeomGetPrev( Create a circle with color of the previous circle:
Geom_ID new_geom, prev_geom; new_geom = TecUtilGeomCircleCreate(CoordSys_Frame, 50., 50., 25.); prev_geom = TecUtilGeomGetPrev(new_geom); while ( prev_geom != TECUTILBADID && TecUtilGeomGetType(prev_geom) != Geom_Circle ) prev_geom = TecUtilGeomGetPrev(prev_geom); if ( prev_geom != TECUTILBADID ) TecUtilGeomSetColor(new_geom,TecUtilGeomGetColor(prev_geom)); |
|
Get the geometry scope.
INTEGER*4 FUNCTION TecUtilGeomGetScope(GID) |
|
Get the geometry type.
INTEGER*4 FUNCTION TecUtilGeomGetType(GID) |
|
|
|
Get the zone or Line-mapping to which the geometry is attached. Use TecUtilGeomIsAttached to determine whether or not the geometry is attached at all.
INTEGER*4 FUNCTION TecUtilGeomGetZoneOrMap(GID) See TecUtilGeomIsAttached for an example of using TecUtilGeomGetZoneOrMap.
|
|
Create an image geometry. Use the ID obtained from this function to set geometry attributes such as position and coordinates system.
SUBROUTINE TecUtilGeomImageCreate( Create an image geometry anchored at (0.1,0.1) with a size of 0.5, using the file "myimage.png":
Geom_ID G; G = TecUtilGeomImageCreate("c:\\myimage.png",0.1,0.1,0.5); |
|
Get the name of the file associated with an image geometry.
SUBROUTINE TecUtilGeomImageGetFileName( Get the name of the file associated with a geometry.
char *GeomFileName = NULL; GTecUtilGeomImageGetFileName(G, &GeomFileName); |
|
Get the name of the file associated with an image geometry.
INTEGER*4 FUNCTION TecUtilGeomImageGetResizeFilter(GID) Get the resize filter of a geometry.
ImageResizeFilter_e Filter = TecUtilGeomImageSetResizeFilter(G); |
|
Get the width and height of an image geometry.
SUBROUTINE TecUtilGeomImageGetSize( Get the width and height of an image in an image geometry.
double Width; double Height; TecUtilGeomImageGetFileName(GID, &Width, &Height); |
|
Queries the state of the "preserve aspect ratio" toggle for an image geometry.
INTEGER*4 FUNCTION TecUtilGeomImageGetUseRatio(GID) Get the state of the preserve aspect ration toggle in an image geometry:
Boolean_t UsePreserveAspect = TecUtilGeomImageSetUseRatio(GID); |
|
Resets the aspect ratio after any changes have been made in the position of an image geometry.
SUBROUTINE TecUtilGeomImageResetAspectRatio(GID) Reset the aspect ratio of an image geometry:
|
|
Sets the Height of an image geometry. Note that the size of a geometry when it is displayed in a frame is not necessarily the size of the image in the file. The image will be resized to fit the dimension specified when calling this function.
SUBROUTINE TecUtilGeomImageSetHeight( Set the height of an image geometry to 5.0:
TecUtilGeomImageSetHeight(GID, 5.0); |
|
Sets the resize filter of an image geometry.
SUBROUTINE TecUtilGeomImageSetResizeFilter( Set the resize filter for an image geometry to Box:
|
|
Queries the state of the "preserve aspect ratio" toggle for an image geometry.
SUBROUTINE TecUtilGeomImageSetUseRatio( Set the state of the preserve aspect ration toggle in an image to TRUE:
TecUtilGeomImageSetUseRatio(GID, TRUE); |
|
Sets the width of an image geometry. Note that the size of a geometry when it is displayed in a frame is not necessarily the size of the image in the file. The image will be resized to fit the dimensions specified when calling this function.
SUBROUTINE TecUtilGeomImageSetWidth( Set the width of an image geometry to 5.0:
TecUtilGeomImageSetWidth(GID, 5.0); |
|
Determine whether or not a geometry is attached to a zone or Line-mapping. Use TecUtilGeomGetZoneOrMap to get the zone or Line-mapping number to which the geometry is attached.
INTEGER*4 FUNCTION TecUtilGeomIsAttached(GID) Determine the zone or Line-mapping that a geometry is attached to:
extern Geom_ID g; / * created elsewhere * / EntIndex_t zone = 0; EntIndex_t LineMap = 0; if ( TecUtilFrameGetMode() == Frame_XY ) LineMap = TecUtilGeomGetZoneOrMap(g); else if ( TecUtilFrameGetMode() != Frame_Sketch ) zone = TecUtilGeomGetZoneOrMap(g); |
|
Validate a geometry ID.
INTEGER*4 FUNCTION TecUtilGeomIsValid(GID) Determine if a geometry ID is still valid, and if it is valid, change its color to red:
extern Geom_ID g; / * created elsewhere * / if ( TecUtilGeomIsValid(g) ) TecUtilGeomSetColor(g, Red_C); |
|
Get information about the number of points in a polyline of a multi-polyline geometry.
INTEGER*4 FUNCTION TecUtilGeomMPolyGetPointCount( To determine the number of points in the second polyline of a multi-polyline geometry:
extern Geom_ID g; / *created elsewhere, must be a multi-polyline geometry* / LgIndex_t npts_2nd_polyline = TecUtilGeomMPolyGetPointCount(g, 2); |
|
Get the number of polylines in a multi-polyline geometry.
INTEGER*4 FUNCTION TecUtilGeomMPolyGetPolylineCnt(GID) To determine the number of polylines in a multi-polyline geometry:
extern Geom_ID g; / *created elsewhere, must be a multi-polyline geometry* / LgIndex_t npolylines = TecUtilGeomMPolyGetPolylineCnt(g, 2); |
|
Get the number of points in a polyline geometry.
INTEGER*4 FUNCTION TecUtilGeomPolyGetPointCount(GID) |
|
Create a rectangle geometry. Use the ID obtained from this function to set geometry attributes such as line style and color using the TecUtilGeomSetxxx functions.
SUBROUTINE TecUtilGeomRectangleCreate( Create a rectangle anchored at (0.1, 0.1), with a width of 0.2 and a height of 0.3:
Geom_ID G; G = TecUtilGeomRectangleCreate(.1,.1,0.2,0.3); |
|
Get the width and height of a rectangle geometry.
SUBROUTINE TecUtilGeomRectangleGetSize( Get the width and height of a rectangle:
double W,H; extern Geom_ID g; / * must be a rectangle * / TecUtilGeomRectangleGetSize(g,&W,&H); |
|
Set the width and height of a rectangle geometry.
SUBROUTINE TecUtilGeomRectangleSetSize( Set the width and height of a rectangle:
extern Geom_ID g; / * must be a rectangle * / TecUtilGeomRectangleSetSize(g,4,1); |
|
Set the anchor position for a geometry. For circles and ellipses, this is the center. For squares and rectangles, this is the base corner. For lines, this is the offset added to all points of the geometry.
SUBROUTINE TecUtilGeomSetAnchorPos( Create a circle and then move it:
Geom_ID g; g = TecUtilGeomCircleCreate(CoordSys_Frame, 50., 50., 25.); TecUtilRedraw(); TecUtilGeomSetAnchorPos(45., 45., 0.); TecUtilRedraw(); |
|
Set whether or not a geometry is attached to a zone or Line-mapping. Use TecUtilGeom to set which zone or Line-mapping the geometry is attached to.
SUBROUTINE TecUtilGeomSetAttached( Attach a geometry to zone or mapping 5:
extern Geom_ID g; / * created elsewhere * / TecUtilGeomSetAttached(g, TRUE); TecUtilGeomSetZoneOrMap(g, 5); |
|
Set the clipping properties of a geometry.
SUBROUTINE TecUtilGeomSetClipping( Create a red circle and set the clipping to "ClipToFrame":
Geom_ID g; g = TecUtilGeomCircleCreate(CoordSys_Frame, 50., 50., 25.); TecUtilGeomSetClipping(g, Clipping_ClipToFrame); |
|
Set the line color of a geometry.
SUBROUTINE TecUtilGeomSetColor( Create a red circle:
Geom_ID g; g = TecUtilGeomCircleCreate(CoordSys_Frame, 50., 50., 25.); TecUtilGeomSetColor(g, Red_C); |
|
Sets the draw order of a geometry.
SUBROUTINE TecUtilGeomSetDrawOrder( |
|
Set the fill color of a geometry. Use TecUtilGeomSetIsFilled to specify whether or not a geometry is filled with color.
SUBROUTINE TecUtilGeomSetFillColor( Create a red circle filled with yellow:
Geom_ID g; g = TecUtilGeomCircleCreate(CoordSys_Frame, 50., 50., 25.); TecUtilGeomSetColor(g, Red_C); TecUtilGeomSetFillColor(g, Yellow_C); TecUtilGeomSetIsFilled(g, TRUE); |
|
Set whether or not a geometry is filled with a color. Use TecUtilGeomSetFillColor to specify the actual color to fill the geometry with.
SUBROUTINE TecUtilGeomSetIsFilled( |
|
Set the line pattern for a geometry.
SUBROUTINE TecUtilGeomSetLinePattern( Create a dotted circle:
Geom_ID g; g = TecUtilGeomCircleCreate(CoordSys_Frame, 50., 50., 25.); TecUtilGeomSetLinePattern(g, LinePattern_Dotted); |
|
Set the line thickness for a geometry.
SUBROUTINE TecUtilGeomSetLineThickness( Create a circle with five percent thick lines:
Geom_ID g; g = TecUtilGeomCircleCreate(CoordSys_Frame, 50., 50., 25.); TecUtilGeomSetLineThickness(g, 10.); |
|
Set the macro function command for a geometry.
INTEGER*4 FUNCTION TecUtilGeomSetMacroFunctionCmd( Set a geometry so that macro function "PlotData" is called whenever the user holds down Ctrl and clicks the right mouse button on the geometry.
extern Geom_ID g; / * created elsewhere * / TecUtilGeomSetMacroFunctionCmd(g, "PlotData"); |
|
Set the line pattern length for a geometry.
SUBROUTINE TecUtilGeomSetPatternLength( Create two concentric dashed circles of different line pattern lengths (two and ten percent):
Geom_ID g1, g2; g1 = TecUtilGeomCircleCreate(CoordSys_Frame, 50., 50., 20.); TecUtilGeomSetLinePattern(g1, Pattern_Dashed); TecUtilGeomSetPatternLength(g1, 2.); g2 = TecUtilGeomCircleCreate(CoordSys_Frame, 50., 50., 30.); TecUtilGeomSetLinePattern(g2, Pattern_Dashed); TecUtilGeomSetPatternLength(g2, 10.); |
|
Set the position coordinate system for a geometry. This will convert all values in the geometry as well as the anchor position such that the geometry remains in the same position on the screen.
SUBROUTINE TecUtilGeomSetPositionCoordSys( Create a 2-D line segment in frame coordinates and then convert those coordinates to grid coordinates. The geometry will be in the same location on the screen as its initial frame coordinates would indicate until the next time the view for that frame is changed.
Geom_ID g; g = TecUtilGeom2DLineSegmentCreate(CoordSys_Frame, 5, 5, 95, 95); TecUtilGeomSetPositionCoordSys(CoordSys_Grid); |
|
Set the scope for a geometry.
SUBROUTINE TecUtilGeomSetScope( |
|
|
|
Set the zone or Line-mapping attachment for a geometry. Use TecUtilGeomSetAttached to specify whether or not the geometry is attached to a zone or Line-mapping.
SUBROUTINE TecUtilGeomSetZoneOrMap( |
|
Create a square geometry. Use the ID obtained from this function to set geometry attributes such as line style and color using the TecUtilGeomSetxxx functions.
SUBROUTINE TecUtilGeomSquareCreate( Create a square of width 0.5 and anchored at (0.1, 0.1):
Geom_ID G; G = TecUtilGeomSquareCreate(CoordSys_Grid,0.1,0.1,0.5); |
|
Get the size of a square geometry.
REAL*8 FUNCTION TecUtilGeomSquareGetSize(GID) Get the size of a square geometry:
extern Geom_ID g; / * must be a square * / double size = TecUtilGeomSquareGetSize(g); |
|
Set the size of a square geometry.
SUBROUTINE TecUtilGeomSquareSetSize( Set the size of a square to one:
extern Geom_id g; / * must be a square * / TecUtilGeomSquareSetSize(g,1.0); |
|
Get the current layout file name.
SUBROUTINE TecUtilGetCurLayoutFName( |
|
Use either WinHelp or a browser to view help information. WinHelp is only available under Windows unless you have access to the Bristol HyperHelp compiler for UNIX.
SUBROUTINE TecUtilHelp( Use a browser to launch the help file myaddon.html from the help sub-directory below the Tecplot home directory:
TecUtilHelp("myaddon.html",FALSE,0); |
|
Register a data set converter with Tecplot. This will add an option to the list of data imports accessed via the File/Import menu option. See Section 9.2, "Data Set Loaders," in the ADK User's Manual for a discussion of data set loaders.
INTEGER*4 FUNCTION TecUtilImportAddConverter( An addon is created that has the following data set converter function:
Boolean_t ConvertBananaData(char *DataFName, char *TempBinFName, char **MessageString); { Boolean_t IsOk = TRUE; / * * Code here to open DataFName, * read in the data and write out a binary * Tecplot datafile to TempBinFName using * calls to TecUtilTecxxx functions. If there is * a problem, call TecUtilStringAlloc on * MessageString, supply a message describing the * issue, and set ISOk to FALSE. * / return (IsOk); } The call to register the data set converter with Tecplot is then accomplished using the following: . . IsOk = TecUtilImportAddConverter(ConvertBananaData, "BANANA", "*.ban"); |
|
Register a data set loader with Tecplot. This will add an option to the list of data imports accessed via the File/Import menu option. Data set loaders are more complex than data set converters, but provide you with greater flexibility in terms of the graphical user interface and how the data can be retrieved. See Section 9.2, "Data Set Loaders," in the ADK User's Manual for a discussion of data set loaders.
INTEGER*4 FUNCTION TecUtilImportAddLoader( An addon is created that has the following data set loader function:
Boolean_t LoadBananaData (StringList_pa Instructions) { Boolean_t IsOk = TRUE; / * * Add code to scan through instructions * and load the data. When done, inform * Tecplot about the instructions used to * load the data. * / if (IsOk) TecUtilImportSetLoaderInstr("BANANA", Instructions); return (IsOk); } A function is also created to handle user requests to use the loader from the File/Import dialog: void BananaLoaderDialog (void) { / * * Launch a custom dialog to prompt the * user to identify the data to be loaded. * / } A function is also created to handle user requests to modify the instructions. This function is optional. Boolean_t OverrideBananaInstructions (StringList_pa Instructions) { Boolean_t IsOk = TRUE; / * * Code here to view the current instructions and present * an interface to the user to change them. * / return (IsOk); } The call to register the data set loader with Tecplot is then accomplished using the following: . . IsOk = TecUtilImportAddLoader(LoadBananaData, "BANANA", BananaLoaderDialog, OverrideBananaInstructions); |
|
Inform Tecplot about the instructions used to load the current data set. It is assumed that the current data set was loaded via a data set loader. The current frame must have an attached data set when this function is used.
INTEGER*4 FUNCTION TecUtilImportSetLoaderInstr( |
|
Writes a $!READDATASET macro command to the macro file if macro recording is on. Note: Since TecUtilImportSetLoaderInstr will automatically call this function, you normally do not need to call this function. If you are writing a loader that does not use an instruction string (that is, does not call TecUtilImportSetLoaderInstr ), then you should call this function before displaying your data.
SUBROUTINE TecUtilImportWriteLoaderInstr( Set up an instruction containing a filename and write a $!READDATASET macro command to the current macro file:
StringList_pa Instructs = TecUtilStringListAlloc(); TecUtilStringListAppendString(Instructs, "myfile.dat"); TecUtilImportWriteLoaderInstr("BANANA", Instructs); TecUtilStringListDealloc(&Instructs); |
|
Interrupt Tecplot execution. This is mainly for use with addons which use timers.
SUBROUTINE TecUtilInterrupt() The function NewDataIsReady is assumed to be called when a timer goes off and some new data is ready to be read into Tecplot. OldDataIsNotDoneDrawingYet is a boolean which is TRUE if the previous data is still being drawn in Tecplot's workspace. Interrupt Tecplot if the new data is ready before the old data is finished redrawing.
extern Boolean_t OldDataIsNotDoneDrawingYet; void NewDataIsReady (void) { if (OldDataIsNotDoneDrawingYet) TecUtilInterrupt(); / * Load the new data into Tecplot and redraw * / } |
|
Unlock Tecplot. Call only after you have first called TecUtilLockStart. See Chapter 10, "Locking and Unlocking Tecplot," in the ADK User's Manual for more information on locks in Tecplot.
SUBROUTINE TecUtilLockFinish(AddOnPtr) |
|
Queries for and returns the name of the object currently locking Tecplot.
SUBROUTINE TecUtilLockGetCurrentOwnerName( char *Name = NULL;
name = TecUtilLockGetCurrentOwnerName(void); if (Name) { TecUtilStringDealloc(&Name); } |
|
Lock Tecplot. For every call to TecUtilLockOff, you must have a matching call to TecUtilLockOn. However, both these functions have been replaced by TecUtilLockStart and TecUtilLockFinish. The only time in which these depricated functions should be used is in the InitTecAddon function when an AddonID has not yet been created. See Chapter 10, "Locking and Unlocking Tecplot," in the ADK User's Manual for more information on locks in Tecplot.
SUBROUTINE TecUtilLockOff() |
|
Lock Tecplot. For every call to TecUtilLockOn, you must have a matching call to TecUtilLockOff. However, both these functions have been replaced by and TecUtilLockFinish. The only time in which these depricated functions should be used is in the InitTecAddon function when an AddonID has not yet been created. See Chapter 10, "Locking and Unlocking Tecplot," in the ADK User's Manual for more information on locks in Tecplot.
SUBROUTINE TecUtilLockOn() |
|
Lock Tecplot. For every call to TecUtilLockStart, you must have a matching call to TecUtilLockFinish. See Chapter 10, "Locking and Unlocking Tecplot," in the ADK User's Manual for more information on locks in Tecplot.
SUBROUTINE TecUtilLockStart(AddOnPtr) |
|
Include a function in the list of functions to call when the $!ADDONCOMMAND macro command is processed. This in effect allows you to extend Tecplot's macro language so that commands needed to perform operations in your addon can be included in a Tecplot macro.
INTEGER*4 FUNCTION TecUtilMacroAddCommandCallback( The following example shows how an addon can augment the Tecplot macro language with the commands "GO" and "STOP." First create a function that will be called by Tecplot when a "GO" or "STOP" command is encountered in a macro file.
Boolean_t ProcessBananaCommands(char *Command, char **ErrMsg) { Boolean_t IsOk = TRUE; if (strcmp(Command,"GO") == 0) { / * code here to execute a GO command * / } else if (strcmp(Command, "STOP") == 0) { / * code here to execute a STOP command * / } else { *ErrMsg = TecUtilStringAlloc(80, "Error message string"); sprintf(*ErrMsg, "Unknown BANANA command"); IsOk = FALSE; } return IsOk; } In the initialization code for your addon, register the function with: . . TecUtilMacroAddCommandCallback("BANANA", ProcessBananaCommands); . . |
|
Instruct Tecplot to execute a single macro command. The macro command is supplied as a string. Currently this command is restricted as follows: · Only commands that do not require raw data are accepted. · Command must be all on one line-no newlines. See the Tecplot Reference Manual for details about Tecplot's macro language.
INTEGER*4 FUNCTION TecUtilMacroExecuteCommand(Command) Execute a macro command to animate the I-planes:
TecUtilMacroExecuteCommand("$!ANIMATEIJKPLANES PLANES = I"); |
|
Instruct Tecplot to record a macro command for your addon to the macro file which is currently being recorded.
INTEGER*4 FUNCTION TecUtilMacroRecordAddOnCommand( |
|
Instruct Tecplot to record an addon macro command, that includes raw data, to the macro file.
INTEGER*4 FUNCTION TecUtilMacroRecordAddOnComRaw( Record an addon command that has the text "3.7 9.4" in the RAWDATA section:
If (TecUtilMacroIsRecordingActive()) { TecUtilMacroRecordAddOnComRaw("MYADDON", "LOADXY", "3.7 9.4"); } |
|
Send anything you want to the Tecplot record file.
INTEGER*4 FUNCTION TecUtilMacroRecordRawCommand(Command) Record commands that will cause Tecplot to loop to animate 3 zones when the macro is played back:
if (TecUtilMacroIsRecordingActive()) { TecUtilMacroRecordRawCommand("$!Loop 3\n" "$!ActiveFieldZones[|Loop|]\n" "$!Redraw\n" "$!EndLoop\n"); |
|
Set the value for a macro variable. Any macro executed after this call may then reference the value using |macrovar|.
INTEGER*4 FUNCTION TecUtilMacroSetMacroVar( Assign a file name to the macro variable FNAME, then use it in a Tecplot macro:
IsOk = TecUtilMacroSetMacroVar("FName","/home/george/test.dat"); .... In a later macro you can reference |FName|: $!ReadDataSet "|FName|" |
|
Create a menu button to add to a menu option in Tecplot. Instruct Tecplot on the name of the function to call when this menu option is selected.
INTEGER*4 FUNCTION TecUtilMenuAddOption( Add an option to the Tools menu in Tecplot called "Banana." When selected, have Tecplot call the function BananaCallback. First create the BananaCallback function:
void BananaCallback(void) { // code executed when "Banana" is selected in the // "Tools" menu. } In the initialization code for the addon add:
IsOk = TecUtilMenuAddOption("Tools", "Banana", 'B', BananaCallback); To put the menu item in a sub-menu of Tools called "Fruit" use:
IsOk = TecUtilMenuAddOption("Tools\n&Fruit", "Banana", 'B', BananaCallback); The sub-menu "Fruit" of "Tools" will be created if necessary, and if it is created, it will be given a mnemonic of 'F'. |
|
Adds menu separator to the end of the specified parent menu.
INTEGER*4 FUNCTION TecUtilMenuAddSeparator(MenuPath) |
|
Remove all menus, submenus, and menu items from the Tecplot menu bar. This will clear menu items added by other add-ons, making those add-ons inaccessible. The add-on containing this call should either be the only add-on loaded into Tecplot, or it should be loaded into Tecplot first and it should clear the menus during initialization before the other add-ons are loaded.
SUBROUTINE TecUtilMenuClearAll() To wipe out Tecplot's standard menu and replace it with a single option called "Banana" which is located under a menu called "Go":
TecUtilMenuClearAll(): IsOk = TecUtilMenuAddOption("&Go", "Banana", `B', BananaCallBack); |
|
Set the sensitivity of a menu option. This function is currently not implemented. Do not use. |
|
Get the current mouse mode.
INTEGER*4 FUNCTION TecUtilMouseGetCurrentMode() |
|
This function will tell you if the specified mouse mode is valid for the current state of Tecplot.
INTEGER*4 FUNCTION TecUtilMouseIsValidMode(MouseMode) |
|
Sets Tecplot's mouse mode to the one specified. This service request behaves exactly as if the user had selected the mouse mode via Tecplot's user interface.
INTEGER*4 FUNCTION TecUtilMouseSetMode(MouseMode) |
|
Adds the function to a list of functions that Tecplot calls only one time when Tecplot is in an idle state. This is particularly important for any addon that needs to perform potentially disruptive Tecplot operations (such as modifying data) in response to a particular state change. It is important for an addon to set a local flag when it registers the callback (and check that the flag is not set before registering) and clears the flag after the registered callback is called by Tecplot so that only one on-idle callback is registered to handle the pending operations.
INTEGER*4 FUNCTION TecUtilOnIdleQueueAddCallback( Clear the current layout.
// Make sure only one on-idle function is registered at a time. static Boolean_t PendingMyUpdateFuncOnIdle = FALSE; static void MyUpdateFuncOnIdle(ArbParam_t ClientData) { // ... do some potentially disruptive work in Tecplot // clear the flag so we can register another update if needed PendingMyUpdateFuncOnIdle = FALSE; } // A state change monitor usually used to update dialogs and // other addon state when Tecplot (or another addon) changes // the Tecplot's current state void MyStateChangeMonitor(StateChange_e StateChange, ArbParam_t CallData) { if (StateChange == StateChange_VarsAltered) { // Addon needs to do something that is disruptive so we // need to register an on-idle callback to do the work // when Tecplot is idle. // if one is not already registered ... if (!PendingMyUpdateFuncOnIdle) { // keep track of our registration PendingMyUpdateFuncOnIdle = TRUE; // Queue the callback TecUtilOnIdleQueueAddCallback(MyUpdateFuncOnIdle, (ArbParam_t)MyData); } } } |
|
Add the specified geometry to the pick list. See Section 17.4, "The Pick List," in the ADK User's Manual for a discussion of pick lists.
INTEGER*4 FUNCTION TecUtilPickGeom(GID) Pick the first geometry in the current frame:
Geom_ID gid; gid = TecUtilGeomGetBase(); if (gid ! = NULL) TecUtilPickGeom(gid); |
|
Add the specified text to the pick list. See the ADK User's Manual for a discussion of pick lists.
INTEGER*4 FUNCTION TecUtilPickText(TID) Pick the first text in the current frame.
Text_ID tid; tid = TecUtilTextGetBase(); if (tid ! = NULL) TecUtilPickText(tid); |
|
Shows or hides the wait cursor and optionally displayes a wait message. This function can be used to display an hourglass cursor and optional message during non-cancellable proceedures. (If you need a cancel button and/or progress indicator, then you must use TecUtilDialogLaunchPercentDone/TecUtilDialogDropPercentDone rather than this function.)
SUBROUTINE TecUtilPleaseWait( Show a wait message for a lengthy operation:
{ TecUtilLockStart(AddOnID); TecUtilPleaseWait("Computing the first 1,000,000 digits of PI",TRUE); ComputePI(1000000); / * This may take awhile on a slow machine * / TecUtilPleaseWait(NULL,FALSE); / * Pop the wait cursor and * / / * restore it to its previous state * / TecUtilDialogMessageBox("Finished computing PI", MessageBox_Information); TecUtilLockFinish(AddOnID); } |
|
Instructs Tecplot to include COBs (iso-surfaces, slices, streamtraces, and so forth) along with zones during a probe when an addon has a callback registered with TecUtilProbeInstallCallback and if the user is pressing the Alt key. By default the Alt key is ignored for an addon's installed probe callback.
SUBROUTINE TecUtilProbeAllowCOBs() |
|
Call this function from a probe destination callback to get the cell from the previous probe event in a field plot. In order to use this function, the value passed to the probe destination callback must have been FALSE, indicating an interpolated probe.
INTEGER*4 FUNCTION TecUtilProbeFieldGetCell() |
|
Indicates type type of COB or zone that was selected during the probe event.
INTEGER*4 FUNCTION TecUtilProbeFieldGetCZType() |
|
Call this function from a probe destination callback to get the cell from the previous probe event in a field plot. In order to use this function, the value passed to the probe destination callback must have been FALSE, indicating an interpolated probe.
INTEGER*4 FUNCTION TecUtilProbeFieldGetFaceCell() |
|
Call this function from a probe destination callback to get the I-, J-, or K-plane from the previous probe event in a field plot.
INTEGER*4 FUNCTION TecUtilProbeFieldGetPlane() |
|
Call this function from a probe destination callback to get a field variable value from the previous probe event in a field plot.
REAL*8 FUNCTION TecUtilProbeFieldGetValue(VarNum) |
|
Call this function from a probe destination callback to get the zone number from the previous probe event in a field plot.
INTEGER*4 FUNCTION TecUtilProbeFieldGetZone() |
|
Call this function from a probe destination callback to get the point index from the previous nearest-point probe event in a field plot or an XY-plot. In order to use this function, the value passed to the probe destination callback must have been TRUE, indicating a nearest-point probe.
INTEGER*4 FUNCTION TecUtilProbeGetPointIndex() |
|
If the current frame mode is XY, 2D, or 3D, change the mouse mode to be the probe tool and instruct Tecplot to call a different function when the user completes a probe-like operation in the work area. This function callback will remain in effect until the mouse mode is changed in the Tecplot interface.
INTEGER*4 FUNCTION TecUtilProbeInstallCallback( Override the behavior of the probe tool in Tecplot. When a probe occurs, just print out the results of the probe to simulate some of the capabilities of the probe dialogs in Tecplot. The task is to provide a mechanism whereby your own probe callback overrides the default behavior when a probe event occurs in Tecplot. One way to do this is to add an option to the Tools menu in Tecplot. The callback function assigned to the menu option would then turn around and install the probe callback with the following code: .
. TecUtilProbeInstallCallback(MyProbeCallback, "Click to print out my probe information"); . TecUtilProbeAllowCOBs() . The function MyProbeCallback is then defined as: void MyProbeCallback(Boolean_t IsNearestPoint) { FrameMode_e FrameMode; TecUtilLockStart(AddOnID); FrameMode = TecUtilFrameGetMode(); if (FrameMode == Frame_XY) { printf("XY Probe, Independent value is: %G\n", TecUtilProbeLinePlotGetIndValue()); if (IsNearestPoint) { double DepValue; TecUtilProbeXYGetDepValue(1,&DepValue); printf("Nearest Point: Dependent Value = %G\n", DepValue); printf(" Source LineMap = %d\n", TecUtilProbeLinePlotGetMap()); printf(" Point Index = %d\n", TecUtilProbeGetPointIndex()); } else { EntIndex_t M; for (M = 1; M <= TecUtilLineMapGetCount(); M++) { double DepValue; printf("LineMap = %02d, Dependent Value = ",M); if (TecUtilProbeLinePlotGetDepValue(M,&DepValue)) printf("%G\n",DepValue); else printf("Unknown\n"); } } } else { EntIndex_t SourceZone = TecUtilProbeFieldGetZone(); ZoneType_e ZoneType = TecUtilZoneGetType(SourceZone); IJKPlanes_e Plane = TecUtilProbeFieldGetPlane(); EntIndex_t V; EntIndex_t NumVars; TecUtilDataSetGetInfo((char **)NULL, (EntIndex_t *)NULL, &NumVars); if (IsNearestPoint) printf("Nearest point probe:\n"); else { LgIndex_t ProbeCell = TecUtilProbeFieldGetCell(); printf("Interpolated probe:(Cell = %d)\n",ProbeCell); } for (V = 1; V <= NumVars; V++) { char *VName; if (TecUtilVarGetName(V,&VName)) { printf("%20s : ",VName); TecUtilStringDealloc(&VName); } else printf("<Unknown> : "); printf("%G\n",TecUtilProbeFieldGetValue(V)); } } TecUtilLockFinish(AddOnID); } A complete example can be found in the probtest sample addon included in the distribution. |
|
Call this function from a probe destination callback to get a dependent value from the previous probe event in an Line-plot.
INTEGER*4 FUNCTION TecUtilProbeLinePlotGetDepValue( |
|
Call this function from a probe destination callback to get the independent value from the previous probe event in an Line-plot.
REAL*8 FUNCTION TecUtilProbeLinePlotGetIndValue() |
|
Call this function from a probe destination callback to get the Line-map whose point was selected in the previous nearest-point probe. In order to use this function, the value passed to the probe destination callback must have been TRUE, indicating a nearest-point probe.
INTEGER*4 FUNCTION TecUtilProbeLinePlotGetSourceMap() |
|
|
|
|
|
|
|
Include a function in the list of functions to call when Tecplot is considering shutting down. If you are building an addon that could potentially be in a state where it is not convenient to shut down, then use this function. If the addon does not wish for Tecplot to quit then the function referenced in this call can issue an error message to the user as to why this is the case and then return FALSE. A FALSE return value back to Tecplot will abort the shutdown sequence in Tecplot. TRUE return values by all MopupQuery functions will allow the shut down sequence to occur. The quit query callback is not to be used to do mopup operations such as closing of files and freeing of memory. Instead use TecUtilStateChangeAddCallback to register a function that will listen for the message StateChange_QuitTecplot which is sent when Tecplot has begun its shutdown sequence.
INTEGER*4 FUNCTION TecUtilQuitAddQueryCallback(QuitQueryCallback) |
|
Add the specified member to the specified set. See Chapter 20, "Using Sets," in the ADK User's Manual for a discussion of sets.
INTEGER*4 FUNCTION TecUtilSetAddMember( Create a set called ZonesToDelete and add zones 2 and 4 to it:
Set_pa ZonesToDelete = TecUtilSetAlloc(TRUE); TecUtilSetAddMember(ZonesToDelete, 2, TRUE); TecUtilSetAddMember(ZonesToDelete, 4, TRUE); |
|
Allocate a new empty set. See Chapter 20, "Using Sets," in the ADK User's Manual for a discussion of sets.
SUBROUTINE TecUtilSetAlloc( Create two sets, A and B:
Set_pa A, B; A = TecUtilSetAlloc(TRUE); B = TecUtilSetAlloc(TRUE); |
|
Empties the specified set. See Chapter 20, "Using Sets," in the ADK User's Manual for a discussion of sets.
SUBROUTINE TecUtilSetClear(SetPtr) Get the set of active zones, then clear the set so it can be used again:
Set_pa Zones = NULL; TecUtilZoneGetActive(&Zones); . . / * Use the set of active zones * / . TecUtilSetClear(Zones); . . / * Use the set for something else * / |
|
Copy one set to another. See Chapter 20, "Using Sets," in the ADK User's Manual for a discussion of sets.
INTEGER*4 FUNCTION TecUtilSetCopy( Make a copy of the set of active Line-maps:
Set_pa MySet, LineMaps = NULL; MySet = TecUtilSetAlloc(TRUE); TecUtilLineMapGetActive(&LineMaps); TecUtilSetCopy(MySet, LineMaps, TRUE); . . . TecUtilSetDealloc(&MySet); TecUtilSetDealloc(&LineMaps); |
|
Free all memory associated with the specified set and assign the set to be NULL. See Chapter 20, "Using Sets," in the ADK User's Manual for a discussion of sets.
SUBROUTINE TecUtilSetDealloc(SetPtr) |
|
Get the member of the specified set at the specified position. See Chapter 20, "Using Sets," in the ADK User's Manual for a discussion of sets.
INTEGER*4 FUNCTION TecUtilSetGetMember( Get each member from the set MySet:
Set_pa MySet; . . SetIndex_t Member, Count, Position; Count = TecUtilSetGetMemberCount(MySet); for (Member = 1; Member <= Count; Member++) { Member = TecUtilSetGetMember(MySet, Position); . . } |
|
Get the count of the number of members in a set. See Chapter 20, "Using Sets," in the ADK User's Manual for a discussion of sets.
INTEGER*4 FUNCTION TecUtilSetGetMemberCount(SetPtr) |
|
Get the next member in the specified set which is located after the specified member. See Chapter 20, "Using Sets," in the ADK User's Manual for a discussion of sets.
INTEGER*4 FUNCTION TecUtilSetGetNextMember( Loop through all members of the set MySet:
Set_pa MySet; . . SetIndex_t Member = TecUtilSetGetNextMember(MySet, TECUTILSETNOTMEMBER); while (Member != TECUTILSETNOTMEMBER) { . . Member = TecUtilSetGetNextMember(MySet, Member); } |
|
Get the position in the specified set at which the specified member is located. See Chapter 20, "Using Sets," in the ADK User's Manual for a discussion of sets.
INTEGER*4 FUNCTION TecUtilSetGetPosition( Get the position of the member MyMember of the set MySet:
Set_pa MySet; SetIndex_t Member; . . SetIndex_t Position = TecUtilSetGetPosition(MySet, MyMember); |
|
Determine if the specified set is NULL or contains no members. See Chapter 20, "Using Sets," in the ADK User's Manual for a discussion of sets.
INTEGER*4 FUNCTION TecUtilSetIsEmpty(SetPtr) Determine if the set MySet is empty or contains no members:
Set_pa MySet; Boolean_t SetIsEmpty = TecUtilSetIsEmpty(MySet); |
|
Determines if the specified sets are equal (have the same members). See Chapter 20, "Using Sets," in the ADK User's Manual for a discussion of sets.
INTEGER*4 FUNCTION TecUtilSetIsEqual( Determine if all enabled zones are active:
Boolean_t AllEnabledZonesAreActive; Set_pa ActiveZones = NULL, EnabledZones = NULL; TecUtilZoneGetActive(&ActiveZones); TecUtilZoneGetEnabled(&EnabledZones); AllEnabledZonesAreActive = TecUtilSetIsEqual(ActiveZones, EnabledZones); |
|
Determine if the specified member is in the specified set. See Chapter 20, "Using Sets," in the ADK User's Manual for a discussion of sets.
INTEGER*4 FUNCTION TecUtilSetIsMember( Determine if the set MySet contains the member MyMember, and if so, remove MyMember from MySet:
Set_pa MySet; SetIndex_t MyMember; . . if (TecUtilSetIsMember(MySet, MyMember)) TecUtilSetRemoveMember(MySet, MyMember); |
|
Remove a member from a set. See Chapter 20, "Using Sets," in the ADK User's Manual for a discussion of sets.
SUBROUTINE TecUtilSetRemoveMember( |
|
|
|
|
|
Include a function in the list of functions to call when a state change occurs in Tecplot. For more detailed discussion, either see TecUtilOnIdleQueueAddCallback or the ADK User's Manual. If you want to take advantage of newer capabilities with regard to state changes then use TecUtilStateChangeAddCallbackX instead.
1. When the user picks an object, check and see if it is a zone. If it is, then change its color to red. 2. If anything has happened to the fourth variable, then show an error message. 3. If Tecplot is quitting, then close some files that are open. First, in the Tecplot initialization code add the callback: IsOk=TecUtilStateChangeAddCallback(MyStateChangeCallback); And add the state change callback:
void MyStateChangeCallback(StateChange_e StateChange, ArbParam_t CallData) { . . . / * * Item 1. Check for the case when the user picks a zone. * / if (StateChange == StateChange_PickListSingleSelect) { int NumPickedObjects; NumPickedObjects = TecUtilPickListGetCount(); / * * Check to see if the last object picked is a zone. * / if (TecUtilPickListGetType(NumPickedObjects)== PickObject_Zone) { EntIndex_t ZonePicked; Set_pa ZoneSet; / * Get the number of the zone picked * / ZonePicked = TecUtilPickListGetZoneNumber( NumPickedObjects); / * * Build the zone set to pass to TecUtilZoneSetMesh. * In this case there is only one zone * / ZoneSet = TecUtilSetAlloc(FALSE); if (ZoneSet) { TecUtilSetAddMember(ZoneSet,ZonePicked,TRUE); / * * Change the mesh color attribute. * / TecUtilZoneSetMesh(SV_COLOR, ZoneSet, 0.0, (ArbParam_t)Red_C); TecUtilSetDealloc(&ZoneSet); } } } / * * Item 2. Check for a change in the 4th variable. * / else if (StateChange == StateChange_VarsAltered) { if (TecUtilSetIsMember((Set_pa)CallData, (SetIndex_t)4)) TecUtilDialogErrMsg("Var number 4 was altered"); } / * * Item 3. Close an open file if Tecplot is * shutting down. * / else if (StateChange == StateChange_QuitTecplot) { fclose(SomeOpenFile); } . . . } |
|
Register a callback to receive state changes.
INTEGER*4 FUNCTION TecUtilStateChangeAddCallbackX(ArgListPtr) Register the function MyStateChageCallback with Tecplot:
static void MyStateChangeCallback(StateChange_e StateChange) { TecUtilLockStart(AddOnID); switch (StateChange) { case StateChange_VarsAltered, { Set_pa VarsAltered = NULL; if (TecUtilStateChangeGetVarSet(&VarsAltered)) { Set_pa ZonesAltered = NULL; if (TecUtilStateChangeGetVarSet(&ZonesAltered)) { ... take action knowing which vars in which ... were altered. TecUtilSetDealloc(&ZonesAltered); } else { ... assume all zones were affected. Take action ... knowing which vars were altered. } TecUtilSetDealloc(&VarsAltered); } } break; ... and so on... } TecUtilLockFinish(AddOnID); } . . . void InitTecAddOn(void) { ArgList_pa ArgList; . . . ArgList = TecUtilArgListAlloc(); TecUtilArgListAppendFunction(ArgList, SV_CALLBACKFUNCTION, MyStateChangeCallback); TecUtilStateChangeAddCallbackX(ArgList); TecUtilArgListDealloc(&ArgList); . . . } |
|
Inform tecplot of a state change. Currently this must be called in the following situations:
* StateChange_VarsAltered (A set of variables) * StateChange_VarsAdded (A set of variables) * StateChange_ZonesDeleted (A set of zones) * StateChange_ZonesAdded (A set of zones) * StateChange_NodeMapsAltered (A set of zones) *
SUBROUTINE TecUtilStateChanged( Create a zone, modify its variable values, and inform Tecplot of the state change:
if (TecUtilDataSetAddZone("Banana", 10, 10, 1, ZoneType_Ordered, NULL)) { EntIndex_t Zone; Set_pa ZSet = TecUtilSetAlloc(TRUE); TecUtilDataSetGetInfo(NULL, &Zone, NULL); / * Set up the variable values for the new zone * / TecUtilSetAddMember(ZSet, Zone,TRUE); TecUtilStateChanged(StateChange_ZonesAdded,(ArbParam_t)ZSet); TecUtilSetDealloc(&ZSet); } FORTRAN EXAMPLE: Send a vars altered state change telling tecplot the variable AND the zone where the alteration occurred.
INTEGER*4 DummyArgList pointer (ArgListPtr,DummyArgList) pointer (ZoneListPtr,DummyZoneList) INTEGER*4 DummyZoneList pointer (VarListPtr,DummyVarList) INTEGER*4 DummyVarList INTEGER*4 IShowErr,IErr IShowErr = 0 Call TecUtilArgListAlloc(ArgListPtr) Call TecUtilSetAlloc(IShowErr,ZoneListPtr) Call TecUtilSetAlloc(IShowErr,VarListPtr) IErr = TecUtilSetAddMember(VarListPtr,2,IShowErr) IErr = TecUtilSetAddMember(ZoneListPtr,2,IShowErr) IErr = TecUtilArgListAppendInt(ArgListPtr, & 'STATECHANGE'//char(0), & StateChange_VarsAltered) IErr = TecUtilArgListAppendSet(ArgListPtr, & 'ZONELIST'//char(0), & ZoneListPtr) IErr = TecUtilArgListAppendSet(ArgListPtr, & 'VARLIST'//char(0), & VarListPtr) Call TecUtilStateChangedX(ArgListPtr) Call TecUtilArgListDealloc(ArgListPtr) Call TecUtilSetDealloc(ZoneListPtr) Call TecUtilSetDealloc(VarListPtr) |
|
Inform Tecplot of a state change.
SUBROUTINE TecUtilStateChangedX(ArgListPtr) |
|
Retrieve enumerated supplemental information from the previous state change.
INTEGER*4 FUNCTION TecUtilStateChangeGetArbEnum(ArbEnum) Your state change callback was just called with StateChange_View. Take action if the view type was View_Zoom
LgIndex_t ArbEnumValue; TecUtilStateChangeGetArbEnum(&ArbEnumValue); if ((View_e)ArbEnumValue == View_Zoom) { .... take some action. } |
|
Retrieve Index supplemental information from the previous state change.
INTEGER*4 FUNCTION TecUtilStateChangeGetIndex(Index) Your state change callback was just called with StateChange_VarsAltered. Take action if you can retrieve which data point index was altered.
LgIndex_t IndexValue; if (TecUtilStateChangeGetIndex(&IndexValue)) { .... take some action using IndexValue. } |
|
Retrieve one of the P1,P2,P3,P4,P5, or P6 style parameters from the previous style state change.
char *P1; char *P2; if (TecUtilStateChangeGetStyleParam(1,&P1) && TecUtilStateChangeGetStyleParam(2,&P2) && (strcmp(P1,SV_INTERFACE) == 0) && (strcmp(P2,SV_USEAPPROXIMATEPLOTS) == 0)) { .... take some action. } |
|
Retrieve the set of variables associated with the previous state change.
INTEGER*4 FUNCTION TecUtilStateChangeGetVarSet(VarSetPtr) Your state change callback was just called with StateChange_VarsAltered. Take action using the retrieved set of variables that were altered.
Set_pa VarsAltered; if (TecUtilStateChangeGetVarSet(&VarsAltered)) { .... take some action using VarsAltered. .... NOTE: Do not dealloc VarsAltered when finished. } |
|
Retrieve the number of the zone associated with the previous state change.
INTEGER*4 FUNCTION TecUtilStateChangeGetZone(Zone) Your state change callback was just called with StateChange_AuxDataAdded. Take action if it was auxiliary data associated with zone 2.
LgIndex_t ArbEnumValue; EntIndex_t Zone; if (TecUtilStateChangeGetArbEnum(&ArbEnumValue) && ((AuxDataLocation_e)ArbEnumValue == AuxDataLocation_Zone) && TecUtilStateChangeGetZone(&Zone)) { .... take some knowing aux data was just added .... to zone Zone. } ; |
|
Retrieve the set of zones associated with the previous state change.
INTEGER*4 FUNCTION TecUtilStateChangeGetZoneSet(ZoneSetPtr) Your state change callback was just called with StateChange_VarsAltered. Take action using the retrieved set of variables that were altered. In addition, if possible, make use of the set of zones that were altered if you can retrieve that information.
Set_pa VarsAltered; Set_pa ZonesAltered; if (TecUtilStateChangeGetVarSet(&VarsAltered)) { Set_pa ZonesAltered; if (TecUtilStateChangeGetZoneSet(&ZonesAltered)) { ... take action knowing both what zones and ... what vars were altered. } else { .... take some action using only VarsAltered. .... assume all zones were altered. } NOTE: Do not dealloc ZonesAltered or VarsAltered! } |
|
Set the mode in which state changes are propagated to the specified state change callback.
TecUtilStateChangeSetMode(BananaCallbackFunction, StateChangeMode_v90); |
|
Checks percent of current operation is completed.
INTEGER*4 FUNCTION TecUtilStatusCheckPercentDone(PercentDone) |
|
Checks when current operation is completed.
SUBROUTINE TecUtilStatusFinishPercentDone() |
|
Sets string to be displayed when operation completed.
SUBROUTINE TecUtilStatusSetPercentDoneText(PercentDoneText) |
|
Start monitoring the percent an operation is done.
SUBROUTINE TecUtilStatusStartPercentDone( |
|
Allocate a character string. Use TecUtilStringDealloc to deallocate strings allocated using TecUtilStringAlloc. For the Tecplot ADK ActiveX Component, this function is not currently supported and is never required to be used.
char *S; S = TecUtilStringAlloc(80,"error message string"); sprintf(S, "The error occurred on step %d", IStep); TecUtilDialogErrMsg(S); TecUtilStringDealloc(&S); |
|
Convert a text string using the old formatting syntax into the new formatting syntax.
SUBROUTINE TecUtilStringConvOldFormatting( |
|
Free a string previously allocated with TecUtilStringAlloc, or one that was allocated and returned as the result of calling any other TecUtilxxx function. For the Tecplot ADK ActiveX Component, this function is not currently supported and is never required to be used.
SUBROUTINE TecUtilStringDealloc( |
|
Create an empty string list. See Chapter 19, "Using String Lists," in the ADK User's Manual for a discussion of string lists. Use TecUtilStringListDealloc to deallocate the string list when it is no longer needed.
SUBROUTINE TecUtilStringListAlloc(ResultPtr) Allocate and deallocate a string list.
StringList_pa Names = NULL; Names = TecUtilStringListAlloc(); if (Names != NULL) { / * do something with the name list, append, clear, etc * / . . . / * get rid of the name list * / TecUtilStringListDealloc(&Names); } |
|
Append a copy of the contents of the source string list to the target string list. See Chapter 19, "Using String Lists," in the ADK User's Manual for a discussion of string lists.
INTEGER*4 FUNCTION TecUtilStringListAppend( Append one string list to another.
Boolean_t IsOk = FALSE; StringList_pa Names = NULL; StringList_pa DefaultNames = NULL; / * call some function to get a names list from the user * / Names = MyFuncForGettingNamesFromUser(); / * call some function to get some default name list * / DefaultNames = MyFuncForGettingDefaultNames(); / * combine the two name lists into one * / if (Names != NULL && DefaultNames != NULL) { IsOk = TecUtilStringListAppend(Names, DefaultNames); if (IsOk) { / * do more processing * / . . . / * get rid of the name lists * / TecUtilStringListDealloc(&Names); TecUtilStringListDealloc(&DefaultNames); } } |
|
Append a copy of the string to the string list. The string list expands to accommodate the additional item. See Chapter 19, "Using String Lists," in the ADK User's Manual for a discussion of string lists.
INTEGER*4 FUNCTION TecUtilStringListAppendString( Append two variable names to a string list
Boolean_t IsOk = FALSE; StringList_pa Names = NULL; Names = TecUtilStringListAlloc(); if (Names != NULL) { IsOk = TecUtilStringListAppendString(Names, "X"); IsOk = TecUtilStringListAppendString(Names, "Y"); if (IsOk) { / * do some processing with the name list * / . . . } / * get rid of the name list * / TecUtilStringListDealloc(&Names); } |
|
Remove all members of the string list. See Chapter 19, "Using String Lists," in the ADK User's Manual for a discussion of string lists.
SUBROUTINE TecUtilStringListClear(StringListPtr) Clear a string list so that it no longer maintains any strings items.
Boolean_t ClearNames = FALSE; StringList_pa Names = NULL; / * do some processing to get names * / . . . if (ClearNames) { TecUtilStringListClear(Names); TecUtilDialogMessageBox("All names cleared.", MessageBox_Information); } |
|
Return a handle to a duplicate of the specified string list and its contents. See Chapter 19, "Using String Lists," in the ADK User's Manual for a discussion of string lists. Note: The caller is responsible for deallocating the string list when it is no longer needed.
SUBROUTINE TecUtilStringListCopy( Make a copy of a string list.
StringList_pa Names = NULL; StringList_pa CopyOfNames = NULL; / * do some processing to get names * / . . . CopyOfNames = TecUtilStringListCopy(Names); if (CopyOfNames != NULL) { / * do some processing on the name list copy * / . . . / * get rid of the name list copy * / TecUtilStringListDealloc(&CopyOfNames); } |
|
Deallocate the string list members and handle, and set the handle to NULL. See Chapter 19, "Using String Lists," in the ADK User's Manual for a discussion of string lists.
SUBROUTINE TecUtilStringListDealloc(StringListPtr) Create and then deallocate a string list:
StringList_pa MyStrList = TecUtilStringListAlloc(); . . . TecUtilStringListDealloc(&MyStrList); |
|
Create a string list from a newline delimited string.
A newline delimited string is a character string with newlines (
SUBROUTINE TecUtilStringListFromNLString(
Given the string, Hello
StringList_pa List = NULL; List = TecUtilStringListFromNLString("Hello\n\nWorld"); if (List != NULL) { LgIndex_t I = 0; LgIndex_t Count = 0; / * print each element of the string list * / for (I = 0, Count = TecUtilStringListGetCount(List); I < Count; I++) { String = TecUtilStringListGetString(List, I+1); if (String != NULL) { printf("Item #%d: %s\n", I+1, String); TecUtilStringDealloc(&String); } } / * get rid of the list * / TecUtilStringListDealloc(&List); } |
|
Count the number of strings currently maintained by the string list. See Chapter 19, "Using String Lists," in the ADK User's Manual for a discussion of string lists.
INTEGER*4 FUNCTION TecUtilStringListGetCount(StringListPtr) Get each instruction used to load the current frame's data set:
StringList_pa LoaderInstructs; char *LoaderName = NULL; if (TecUtilImportGetLoaderInstr(&LoaderName,&LoaderInstructs)) { LgIndex_t ii, Count = TecUtilStringListGetCount(LoaderInstructs); for (ii = 1; ii <= Count; ii++) { char *Instruct = TecUtilStringListGetString(LoaderInstructs, ii); / * Do some processing * / . . . TecUtilStringDealloc(&Instruct); } } |
|
Return a reference to the nth string in a string list. See Chapter 19, "Using String Lists", in the ADK User's Manual for a discussion of string lists.
StringList_pa FileNames = NULL; if (TecUtilDialogGetFileNames(SelectFileOption_ReadMultiFile, &FileNames, "any file", (StringList_pa)NULL, "*")) { LgIndex_t N,NumFiles; NumFiles = TecUtilStringListGetCount(FileNames); for (N = 1; N < Numfiles; N++) { char *RawFNamePtr = TecUtilStringListGetRawStringPtr(FileNames,N); / * * Do something with RawFNamePtr. DO NOT DEALLOCATE RawFNamePtr. * / } / * * We do however dealloc the stringlist itself. * / TecUtilStringListDealloc(&FileNames); } |
|
Return a copy of the nth string from a string list. See Chapter 19, "Using String Lists," in the ADK User's Manual for a discussion of string lists. Note: The caller is responsible for de-allocating the copy of the string when it is no longer needed.
SUBROUTINE TecUtilStringListGetString( |
|
Insert a copy of the string into the nth position of the string list. The string list expands and the items are shifted to accommodate the additional item. See Chapter 19, "Using String Lists," in the ADK User's Manual for a discussion of string lists.
INTEGER*4 FUNCTION TecUtilStringListInsertString( Insert a string at the beginning and end of an existing list.
Boolean_t IsOk = FALSE; StringList_pa Names = NULL; LgIndex_t Count = 0; / * do some processing to get names * / . . . / * insert a name at the beginning and end of the list * / IsOk = TecUtilStringListInsertString(Names, 1, "Very First Name"); Count = TecUtilStringListGetCount(Names); IsOk = TecUtilStringListInsertString(Names, Count+1, "Very Last Name"); |
|
Remove the nth string from the string list. The members following the removed item are shifted to fill the vacated space. See Chapter 19, "Using String Lists," in the ADK User's Manual for a discussion of string lists.
SUBROUTINE TecUtilStringListRemoveString( Remove the first name from a name list.
StringList_pa Names = NULL; / * do some processing to get names * / . . . TecUtilStringListRemoveString(Names, 1); |
|
Remove the specified number of strings beginning at the nth string. The members following the items removed are shifted to fill the vacated space. See Chapter 19, "Using String Lists," in the ADK User's Manual for a discussion of string lists.
SUBROUTINE TecUtilStringListRemoveStrings( Remove all but the first and last item from a name list.
LgIndex_t Count = 0; StringList_pa Names = NULL; / * do some processing to get names * / . . . Count = TecUtilStringListGetCount(Names); TecUtilStringListRemoveStrings(Names, 2, Count-2); |
|
Place a copy of the specified string at the nth position in the string list. If the position is beyond the end of the string list, the string list is resized, so that the string references between the last item of the string list in its original state and the last item of the string list in its new state are assigned NULL. If the position is within the boundaries of the original string list, the string at the specified position is replaced by the new value. See Chapter 19, "Using String Lists," in the ADK User's Manual for a discussion of string lists.
INTEGER*4 FUNCTION TecUtilStringListSetString( Replace the first item of a name list with a new value and put a new item ten positions past the current last item.
LgIndex_t Count = 0; StringList_pa Names = NULL; / * do some processing to get names * / . . . IsOk = TecUtilStringListSetString(Names, 1, "New First Name"); Count = TecUtilStringListGetCount(Names); IsOk = TecUtilStringListSetString(Names, Count+10, "New Last Name"); |
|
Return a newline delimited string representation of the string list.
A newline delimited string is a character string with newlines (
SUBROUTINE TecUtilStringListToNLString(
Given a string list containing 3 members: "Hello", "", and "World", the function will return the following string: "Hello
StringList_pa List = NULL; List = TecUtilStringListAlloc(); if (List != NULL) { / * add items to the string list * / TecUtilStringListAppendString(List, "Hello"); TecUtilStringListAppendString(List, ""); TecUtilStringListAppendString(List, "World"); / *print the newline separated string representation * / String = TecUtilStringListToNLString(List); if (String != NULL) { printf("%s\n", String); TecUtilStringDealloc(&String); } / * get rid of the list * / TecUtilStringListDealloc(&List); } |
|
Writes the name/value data set auxiliary data pair to the data file..
INTEGER*4 FUNCTION TecUtilTecAux( |
|
Writes an array of data to the data file.
In the above summary, NumVars is based on the number of variable names supplied in a previous call to TecUtilTecIni.
INTEGER*4 FUNCTION TecUtilTecDat( |
|
Must be called to close out the current data file. There must be a corresponding TecUtilTecEnd for each TecUtilTecIni.
INTEGER*4 FUNCTION TecUtilTecEnd() |
|
Writes the face neighbor connections to the data file.
INTEGER*4 FUNCTION TecUtilTecFace(FaceConnections) |
|
Switch output context to a different file. Each time TecUtilTecIni is called, a new file "context" is switched to. This allows you to write multiple data files at the same time.
INTEGER*4 FUNCTION TecUtilTecFil(F) |
|
Write a geometry to a binary tecplot datafile. This function mimicks the TecGeo function that is part of the TecIO library.
INTEGER*4 FUNCTION TecUtilTecGeo( |
|
Writes the geometry item to the data file.
INTEGER*4 FUNCTION TecUtilTecGeoX(ArgListPtr) |
|
Initializes the process of writing a binary data file. This must be called first before any other TecUtilTecxxx calls are made. You may write to multiple files by calling TecUtilTecIni more than once. Each time TecUtilTecIni is called, a new file is opened. Use TecUtilTecFil to switch between files.
INTEGER*4 FUNCTION TecUtilTecIni( |
|
Write a set of custom labels to the data file.
INTEGER*4 FUNCTION TecUtilTecLab(S) |
|
Writes an array of node data to the binary data file. This is the connectivity list for finite element zones.
INTEGER*4 FUNCTION TecUtilTecNod(NData_Array) |
|
Write a text label to a binary tecplot data file. This function mimicks the TECTXT function that is part of the TecIO library.
INTEGER*4 FUNCTION TecUtilTecTxt( |
|
Writes the text item to the data file.
INTEGER*4 FUNCTION TecUtilTecTxtX(ArgListPtr) |
|
Add a user-defined record, in the form of a character string, to the Tecplot data file. Tecplot currently ignores this record when reading Tecplot data files.
INTEGER*4 FUNCTION TecUtilTecUsr(S) This function is comparable to $!TECUSR, a Tecplot macro command. Please refer to the examples given for $!TECUSR in the Tecplot Reference Manual.
Insert a user-defined record with the string "Hi Mom" into the data file. TecUtilTecUsr("Hi Mom"); |
|
Writes the name/value zone auxiliary data pair to the data file.
INTEGER*4 FUNCTION TecUtilTecZAux( |
|
Writes header information about the next zone to be added to the data file. After TECZNE is called, you must call TECDAT one or more times (and then call TECNOD if the data format is FEBLOCK or FEPOINT).
INTEGER*4 FUNCTION TecUtilTecZne( |
|
Writes the zone to the data file.
INTEGER*4 FUNCTION TecUtilTecZneX(ArgListPtr) |
|
Create a 3D text label in Tecplot.
SUBROUTINE TecUtilText3DCreate( |
|
Get the line color of the box surrounding the text object.
INTEGER*4 FUNCTION TecUtilTextBoxGetColor(TID) |
|
Get the fill color of the box surrounding the text object.
INTEGER*4 FUNCTION TecUtilTextBoxGetFillColor(TID) |
|
Get the line thickness of the text box border.
REAL*8 FUNCTION TecUtilTextBoxGetLineThickness(TID) |
|
Get the margin between the text and the box surrounding the text object.
REAL*8 FUNCTION TecUtilTextBoxGetMargin(TID) |
|
Get the type of the box surrounding the text object.
INTEGER*4 FUNCTION TecUtilTextBoxGetType(TID) |
|
Set the line color for the box surrounding a text object.
SUBROUTINE TecUtilTextBoxSetColor( Create a boxed text label with the box color set to red.
Text_ID Text; Text = TecUtilTextCreate(CoordSys_Frame,50.0,50.0,Units_Point, 30.0,"Hi Mom"); TecUtilTextBoxSetType(Text, TextBox_Hollow); TecUtilTextBoxSetColor(Text, Red_C); |
|
Set the fill color of the box surrounding a text object.
SUBROUTINE TecUtilTextBoxSetFillColor( Create a filled boxed text label with a fill color of blue.
Text_ID Text; Text = TecUtilTextCreate(CoordSys_Frame,50.0,50.0,Units_Point,30.0, "Hi Mom"); TecUtilTextBoxSetType(Text, TextBox_Filled); TecUtilTextBoxSetColor(Text, Blue_C); |
|
Set the line thickness of the box surrounding the text object.
SUBROUTINE TecUtilTextBoxSetLineThickness( |
|
Set the margin between the text and the box surrounding the text object.
SUBROUTINE TecUtilTextBoxSetMargin( Create a boxed text label with a box margin of 60 percent of the height of the text:
Text_ID Text; Text = TecUtilTextCreate(CoordSys_Frame,50.0,50.0,Units_Points,30.0, "Hi Mom"); TecUtilTextBoxSetType(Text, TextBox_Hollow); TecUtilTextBoxSetMargin(Text, 60.0); |
|
Set the type of the box surrounding the text object.
SUBROUTINE TecUtilTextBoxSetType( Create a hollow boxed text label.
Text_ID Text; Text = TecUtilTextCreate(CoordSys_Frame,50.0,50.0,Units_Points, 30.0,"Hi Mom"); TecUtilTextBoxSetType(Text, TextBox_Hollow); |
|
Creates a text object. Use the handle obtained from this function to set text attributes using the TecUtilTextSetxxx functions. Units are in frame coordinates by default.
SUBROUTINE TecUtilTextCreate( Create a simple text label:
Text_ID Text; Text = TecUtilTextCreate(CoordSys_Frame, 50.0, 50.0, Units_Point, 30.0, "Hello"); |
|
Deletes the specified text object.
SUBROUTINE TecUtilTextDelete(TID) Delete the first text object from the list of text objects maintained by the current frame.
Text_ID Text; Text = TecUtilTextGetBase(); if (Text != TECUTILBADID) { TecUtilTextDelete(Text); } |
|
Get the text anchor style.
INTEGER*4 FUNCTION TecUtilTextGetAnchor(TID) |
|
Get the anchor coordinate position of the text object in the current coordinate system. Note: See also TecUtilTextSetCoordSysAndUnits.
SUBROUTINE TecUtilTextGetAnchorPos( Text_ID Text;
double XOrThetaPos; double YOrRPos; double ZPos; / * use TecUtilTextDelete() when 'Text' is no longer needed * / Text = TecUtilTextCreate(CoordSys_Frame, 50.0, 50.0, Units_Point,30.0, "Hello"); if (Text != TECUTILBADID) { / * do all sorts of things * / . . . / * get the current anchor position of the text * / TecUtilTextGetAnchorPos(Text, &XOrThetaPos, &YOrRPos, &ZPos); } |
|
Get the text angle.
REAL*8 FUNCTION TecUtilTextGetAngle(TID) |
|
Get the clipping properties of a text object.
INTEGER*4 FUNCTION TecUtilTextGetClipping(TID) |
|
Get the color of the text object.
INTEGER*4 FUNCTION TecUtilTextGetColor(TID) |
|
Get the font used for the text object.
INTEGER*4 FUNCTION TecUtilTextGetFont(TID) |
|
Get the text height in the currently defined text size units.
REAL*8 FUNCTION TecUtilTextGetHeight(TID) |
|
Get the spacing between lines of text.
Note: A newline (
REAL*8 FUNCTION TecUtilTextGetLineSpacing(TID) |
|
Get the macro function command string associated with the text object.
INTEGER*4 FUNCTION TecUtilTextGetMacroFunctionCmd( Boolean_t IsOk;
Text_ID Text; char *MacroCommand = NULL; . . . / * get the text's associated macro command * / IsOk = TecUtilTextGetMacroFunctionCmd(Text, &MacroCommand); if (IsOk) { / * do something with command * / . . . / * cleanup; macro command no longer needed * / TecUtilStringDealloc(&MacroCommand); } |
|
Get the next text object, relative to the specified text object, from the list of text objects maintained by the current frame.
SUBROUTINE TecUtilTextGetNext( |
|
Get the coordinate system to which the text is associated.
INTEGER*4 FUNCTION TecUtilTextGetPositionCoordSys(TID) |
|
Get the previous text object, relative to the specified text object, from the list of text objects maintained by the current frame. Note: See also TecUtilTextGetBase and TecUtilTextGetNext.
SUBROUTINE TecUtilTextGetPrev( |
|
Get the scope of the text object. Text with local scope is displayed only in the frame in which it is created. If the the text is defined as having global scope it will appear in all "like" frames, that is, those frames using the same data set as the one in which the text was created.
INTEGER*4 FUNCTION TecUtilTextGetScope(TID) |
|
Get the size units for the text object. Note: See also TecUtilTextGetHeight.
INTEGER*4 FUNCTION TecUtilTextGetSizeUnits(TID) |
|
Get the string associated with the text object.
INTEGER*4 FUNCTION TecUtilTextGetString( Text_ID Text;
Boolean_t IsOk = FALSE; char *TextString = NULL; Text = TecUtilTextCreate(CoordSys_Frame,50.0, 50.0, Units_Point, 30.0, "Hello"); if (Text != TECUTILBADID) { / * do some things with the text * / . . . / * change the string of the text object * / TecUtilTextSetString(Text, "Hello World"); / * do some more things * / . . . / * print the contents of the text * / / * string to standard output * / IsOk = TecUtilTextGetString(Text, &TextString); if (IsOk) { printf("%s\n", TextString); TecUtilStringDealloc(&TextString); } } |
|
|
|
Get the zone or map with which the text object is associated (if it is attached). Note: See also TecUtilTextIsAttached and TecUtilTextSetAttached.
INTEGER*4 FUNCTION TecUtilTextGetZoneOrMap(TID) |
|
Determine if the text object is attached to a zone or map. Note: See also TecUtilTextGetZoneOrMap and TecUtilGeomSetZoneOrMap.
INTEGER*4 FUNCTION TecUtilTextIsAttached(TID) |
|
Determine if the text object is valid in the current frame context.
INTEGER*4 FUNCTION TecUtilTextIsValid(TID) |
|
Set the anchor style for a text object.
SUBROUTINE TecUtilTextSetAnchor( |
|
Set the XY-position for the text object. The text is always anchored in the coordinate system specified by TecUtilTextSetCoordSysAndUnits each time the text object is drawn.
SUBROUTINE TecUtilTextSetAnchorPos( |
|
Set the angle in degrees for a text object.
SUBROUTINE TecUtilTextSetAngle( |
|
Indicate if the the text object should be attached to a zone or map. Note: See also TecUtilTextGetZoneOrMap and TecUtilTextSetZoneOrMap.
SUBROUTINE TecUtilTextSetAttached( |
|
Set the clipping properties of a text object.
SUBROUTINE TecUtilTextSetClipping( Create a texts string "Test Text Object" and set the clipping to "ClipToFrame":
Text_ID TID; TID = TecUtilTextCreate(CoordSys_Frame,20,30, Units_Point, 15,"Test Text Object"); TecUtilTextSetClipping(t, Clipping_ClipToFrame); |
|
Set the color of a text object.
SUBROUTINE TecUtilTextSetColor( |
|
Set the coordinate system for the position and the units for the character height of a text object. The text object's position and text height are adjusted so that it remains identical to its visual appearance in the original coordinate and unit system.
SUBROUTINE TecUtilTextSetCoordSysAndUnits( Create a text which is positioned and sized in the grid coordinate system that reads "Hello." Then, change the text to be positioned and sized in the frame coordinate system :
Text_ID Text; Text = TecUtilTextCreate(CoordSys_Grid, 0.25, 0.25, Units_Grid, 0.25, "Hello."); if (Text != TECUTILBADID) { . . / * Change the text position and size to * / / * be in the frame coordinate system and * / / * set the text position to be the center * / / * of the frame coordinate system * / TecUtilTextSetCoordSysAndUnits(Text,CoordSys_Frame, Units_Frame); TecUtilTextSetXYPos(Text, 50.0, 50.0); . . TecUtilTextDelete(Text); } |
|
Set the font for a text object.
SUBROUTINE TecUtilTextSetFont( |
|
Set the character height for a text object. Note: See also TecUtilTextSetCoordSysAndUnits.
SUBROUTINE TecUtilTextSetHeight( |
|
Set the line spacing for a text object. Line spacing is dependent on the height of the text and the size unit system in which it is drawn.
SUBROUTINE TecUtilTextSetLineSpacing( |
|
Set the macro function command associated with a text object.
INTEGER*4 FUNCTION TecUtilTextSetMacroFunctionCmd( |
|
Set the scope of the text object. Text with local scope is displayed only in the frame in which it is created. If the the text is defined as having global scope it will appear in all "like" frames, that is, those frames using the same data set as the one in which the text was created.
SUBROUTINE TecUtilTextSetScope( |
|
Set the text string for a text object.
INTEGER*4 FUNCTION TecUtilTextSetString( |
|
|
|
Set the zone or map to which the text object is associated (if it is attached). Note: See also TecUtilTextIsAttached and TecUtilTextSetAttached.
SUBROUTINE TecUtilTextSetZoneOrMap( |
|
Adds a timer callback, a function which is called by Tecplot at a set interval of time. See also "TecUtilOnIdleQueueAddCallback".
static Boolean_t MyTimerCallback(ArbParam_t MyData) { if (!TecUtilLockIsOn()) { // Tecplot isn't currently locked, so it's safe to call TecUtilFunctions TecUtilLockStart(AddOnID); // Lock Tecplot for ourselves // ... Do processing with TecUtil functions // Release Tecplot for other addons TecUtilLockFinish(AddOnID); } else { // Another addon has locked Tecplot. It is NOT safe to // call any TecUtil functions, so do nothing. } // Return TRUE to continue the timer, return FALSE to stop the timer. return TRUE; } // Make the above function called every second. TecUtilTimerAddCallback(1000,NULL,MyTimerCallback); For a complete example of an addon which uses timers, see the timetest sample. |
|
Determine if you can undo the last operation.
|
|
Undo the last opeartion.
|
|
Reallocate a zone in the data set attached to the current frame. This in effect redimensions the raw data referenced by the zone.
INTEGER*4 FUNCTION TecUtilZoneRealloc( Reallocate the first zone: TecUtilZoneRealloc(1,15,4,1); |
|
Instruct Tecplot to either build or forgo building zone optimization information. Zone optimization information enhances interactive performance but has an upfront performance cost. This function can be called any time after the zone has been created.
SUBROUTINE TecUtilTecUtilZoneSetBuildZoneOptInfo(
|