Collection: AxisSystem3DCustomScalings

DIAdem 2018 Help


Edition Date: June 2018
Part Number: 370858P-01
View Product Info

DOWNLOAD (Windows Only)


DIAdem 2015 Help
DIAdem 2017 Help
DIAdem 2018 Help
DIAdem 2019 Help
DIAdem 2020 Help

Collection of all AxisSystem3DCustomScalings objects. Use the AxisSystem3DCustomScalings collection to access user-defined axis scalings in a 3D axis system in DIAdem REPORT.

Note   To test the following example scripts, first save the bottom script and select Settings»Extensions»User Commands to register it as a user command.

The following example creates a 3D axis system with a curve and assigns the user-defined axis scaling with the ID MotorWarmScaling to the y-axis:

Dim oMy3DAxisSystem, oMyPos, oMy3DCurve, oMyCustomScalings, oMyCustomScalingObj, oMyYScaling
Call Report.NewLayout()
Call Data.Root.Clear()
Call DataFileLoad(DataReadPath & "Report_Data.tdm","TDM","")
'Creating Axis System and Curve
Set oMy3DAxisSystem = Report.ActiveSheet.Objects.Add(eReportObject3DAxisSystem, "My3DAxisSystem")
Set oMyPos = oMy3DAxisSystem.Position.ByCoordinate
oMyPos.X1 = 20
oMyPos.X2 = 80
oMyPos.Y1 = 20
oMyPos.Y2 = 80
Set oMy3DCurve = oMy3DaxisSystem.Curves3D.Add(e3DShapeSurface, "My3DDCurve")
oMy3DCurve.Shape.XChannel.Reference = "[2]/[1]"
oMy3DCurve.Shape.YChannel.Reference = "[2]/[2]" 
oMy3DCurve.Shape.ZChannel.Reference = "[2]/[3]"
'Creating Custom Scaling
Set oMyCustomScalings = Report.Settings.CustomScaling.AxisSystem3DList
Call oMyCustomScalings.RemoveAll()
Set oMyCustomScalingObj = oMyCustomScalings.Add("MotorWarmScaling")
oMyCustomScalingObj.BaseScalingType = eAxisAutoScalingCompleteAutomatic
oMyCustomScalingObj.EventName = "MyCustomScalingEvent3D"
oMyCustomScalingObj.Label = "LabelForMotorWarmScaling"
'Assigning Custom Scaling to Axis
Set oMyYScaling = oMy3DAxisSystem.AxisList.Y.Scaling
oMyYScaling.AutoScalingType = eAxisScalingSimpleCustom
oMyYScaling.CustomScalingID = "MotorWarmScaling"
Call Report.Refresh()

The user command calculates the values for the axis scaling. The user command receives a parameter. This parameter is a CustomScalingAxisSystem3DContext object and provides information about the axis system and about the ID of the user-defined axis scaling.

Sub MyCustomScalingEvent3D(Context)
  Dim oMyAxisSystem, oMyAxis, MinMax
  Set oMyAxisSystem = Context.AxisSystem
  Select Case Context.AxisType
  Case e3DAxisTypeX
    Set oMyAxis = oMyAxisSystem.AxisList.X
  Case e3DAxisTypeY
    Set oMyAxis = oMyAxisSystem.AxisList.Y
  Case e3DAxisTypeZ
    Set oMyAxis = oMyAxisSystem.AxisList.Z
  Case Else
    Exit Sub
  End Select
  MinMax = ValMax(Abs(oMyAxis.Scaling.End),Abs(oMyAxis.Scaling.Begin))
  oMyAxis.Scaling.Origin = oMyAxis.Scaling.Begin
  oMyAxis.Scaling.Begin = -MinMax
  oMyAxis.Scaling.End = +MinMax
End Sub

Properties

Count

Methods

Add | Exists | Item | Remove | RemoveAll

WAS THIS ARTICLE HELPFUL?

Not Helpful