DIAdem Help

Object: ReferenceLine

  • Updated2024-09-12
  • 2 minute(s) read

Object: ReferenceLine

The ReferenceLine object provides the properties of reference curves for the labels of isolines in a characteristic diagram in DIAdem REPORT.

The following example generates a 3D axis system with a characteristic diagram display. The example defines the properties of the contour table from which the example takes the values and the colors of the isolines. The example labels the isolines according to the reference curve:

VBScriptPython

 

Dim oMy3DAxisSystem, oMy3DCurve, oMyPos, oMyShape, oMyIsoValTable, i, iChannelMax, iChannelMin, oMySettings, oMyLabel
Call Report.NewLayout()
Call Data.Root.Clear()
Call DataFileLoad(DataReadPath & "Report_Data.tdm","TDM","")
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(e3DShapeCharacteristicDiagram, "MyNew3DCurve")
Set oMyShape = oMy3DCurve.Shape
oMyShape.XChannel.Reference = "[2]/[1]"
oMyShape.YChannel.Reference = "[2]/[2]"
oMyShape.ZChannel.Reference = "[2]/[3]"
oMyShape.DataStructure = e3DDataStructureMatrix
Set oMySettings = oMy3DAxisSystem.Settings
oMySettings.RotationAngleXY = 90
oMySettings.RotationAngleZ = 270
Set oMyLabel = oMyShape.Extensions.Isoline.Label
oMyLabel.Visible = True
oMyLabel.ReferenceLineDefinition = e3DLabelReferenceLineAutomatic
oMyLabel.RepetitionMode = e3DLabelRepetitionPerOneRefLine
oMyLabel.Format = "d.dddd"
iChannelMax = Data.Root.ChannelGroups(2).Channels(3).Properties("maximum").Value
iChannelMin = Data.Root.ChannelGroups(2).Channels(3).Properties("minimum").Value
Set oMyIsoValTable = oMyShape.Settings.IsoValueTable
oMyIsoValTable.Count = 5
oMy3DCurve.Shape.Extensions.Isoline.Type = e3DCharacteristicIsoValueFromIsoValueTable
oMy3DCurve.Shape.Extensions.Isoline.Color.ColorIndex = eColorIndexPalette
For i = 1 to oMyIsoValTable.Count
  Call oMyIsoValTable.Item(i).Color.SetPredefinedColor(i)
  oMyIsoValTable.Item(i).Interval = 20
  oMyIsoValTable.Item(i).LineType = eLineTypeDotted
  oMyIsoValTable.Item(i).UpperLimit = iChannelMin + (iChannelMax - iChannelMin) / oMyIsoValTable.Count * i
  oMyIsoValTable.Item(i).Width = eLineWidth0050
Next
Call Report.Refresh()

Properties

X1 | X2 | Y1 | Y2