단면도 개요
.NET API는 샘플라인, 단면도그리고 단면도뷰에 접근하고 생성하기 위한 클래스와 매서드를 노출한다. 샘플라인은 SampleLine object에 의해서 캡슐화 된다, 그리고 관련 SampleLine object는 SampleLineGroup collection안에 구성되어 있다. SampleLineGroup object는 선형과 연관된다.
단면도는 지표면, corridor 모델 또는 관망이다. 이들은 샘플라인에 의해서 정의된 수직면과의 교차된다. .NET API 에서, 이 지표면은 SectionSource object에 의해서 표현된다. SectionSource object는 SampleLineGroup의 SectionSourceCollection에 보관된다.
단면도 뷰는 SectionView object에 의해서 캡슐화 된다. SectionView는 관련 SampleLine과 관련이 있다. 이 기능은 단면도 뷰가 Sections 샘플에 의해서 결정된다는 것을 보여준다.
이 절의 주제
- 샘플라인
- 단면도
샘플라인
SampleLine object는 Alignment의 SampleLineGroup collection에 보관된다. 이 object는 Alignment.GetSampleGroupIds() 매서드로 가져온다. SampleLine object의 collection은 SampleLineGroup에 있는데, 이것은 SampleLineGroup.GetSampleLineIds() 매서드로 가져온다. 이 예제는 도면의 첫번째 선형에 대한 모든 SampleLineGroups와 SampleLines의 목록에 의해서 collection모두에 접근하는 방법을 설명한다. :
ObjectId alignmentId = _civildoc.GetAlignmentIds()[0];
Alignment alignment = ts.GetObject(alignmentId, OpenMode.ForRead) as Alignment;
foreach (ObjectId oid in alignment.GetSampleLineGroupIds())
{
SampleLineGroup sampleLineGroup = ts.GetObject(oid, OpenMode.ForRead) as SampleLineGroup;
_editor.WriteMessage("Sample Line Group: {0}\n", sampleLineGroup.Name);
foreach (ObjectId sampleLineId in sampleLineGroup.GetSampleLineIds())
{
SampleLine sampleline = ts.GetObject(sampleLineId, OpenMode.ForRead) as SampleLine;
_editor.WriteMessage("Sample Line: {0}\n", sampleline.Name);
}
}
Alignment alignment = ts.GetObject(alignmentId, OpenMode.ForRead) as Alignment;
foreach (ObjectId oid in alignment.GetSampleLineGroupIds())
{
SampleLineGroup sampleLineGroup = ts.GetObject(oid, OpenMode.ForRead) as SampleLineGroup;
_editor.WriteMessage("Sample Line Group: {0}\n", sampleLineGroup.Name);
foreach (ObjectId sampleLineId in sampleLineGroup.GetSampleLineIds())
{
SampleLine sampleline = ts.GetObject(sampleLineId, OpenMode.ForRead) as SampleLine;
_editor.WriteMessage("Sample Line: {0}\n", sampleline.Name);
}
}
당신은 SampleLine.Create() 정적모델을 사용해서 새 SampleLines를 생성할 수 있다. 그 정정모델은 새 SampleLine의 이름, SampleLine 을 추가하기 위한 SampleLineGroup의 ObjectId를 취하고, 측점 수(Double형 RawStation 수)나 Point2dCollection 새 SampleLine의 vertex를 정의하는 좌표를 포함한 Point2dCollection을 취한다.
이 예제는, 사용자는 선형을 선택하라는 메세지를 표시하게 되고, SampleLines이 선형의 각 주측점에 추가된다.
// prompt user for Alignment
ObjectId alignmentId = promptForEntity("Select an Alignment to add sample lines to:", typeof(Alignment));
Alignment alignment = ts.GetObject(alignmentId, OpenMode.ForWrite) as Alignment;
ObjectId sampleLineGroupId = SampleLineGroup.Create("New Group", alignmentId);
SampleLineGroup sampleLineGroup = ts.GetObject(sampleLineGroupId, OpenMode.ForWrite) as SampleLineGroup;
Station[] majorStations = alignment.GetStationSet(StationTypes.Major);
foreach (Station station in majorStations)
{
ObjectId sampleLineId = SampleLine.Create("SampleLine" + station.RawStation, sampleLineGroupId, station.RawStation);
SampleLine sampleLine = ts.GetObject(sampleLineId, OpenMode.ForWrite) as SampleLine;
sampleLine.StyleName = "Standard";
}
ObjectId alignmentId = promptForEntity("Select an Alignment to add sample lines to:", typeof(Alignment));
Alignment alignment = ts.GetObject(alignmentId, OpenMode.ForWrite) as Alignment;
ObjectId sampleLineGroupId = SampleLineGroup.Create("New Group", alignmentId);
SampleLineGroup sampleLineGroup = ts.GetObject(sampleLineGroupId, OpenMode.ForWrite) as SampleLineGroup;
Station[] majorStations = alignment.GetStationSet(StationTypes.Major);
foreach (Station station in majorStations)
{
ObjectId sampleLineId = SampleLine.Create("SampleLine" + station.RawStation, sampleLineGroupId, station.RawStation);
SampleLine sampleLine = ts.GetObject(sampleLineId, OpenMode.ForWrite) as SampleLine;
sampleLine.StyleName = "Standard";
}
이 절의 주제
- SampleLine 스타일 생성
SampleLine 스타일 생성
SampleLines으로 작업할때, 3개의 스타일이 있다. 그 스타일은 샘플라인이 표시되는 방법을 제어하는 작업을 하기 위해 필요하다.
GroupPlotStyle
이 스타일은 단면도 뷰 그래프의 그룹이 그려지는 방법을 제어한다. 그 스타일은 row와 column 방향을 변경한다. 그리고 여러 그래프 사이의 간격을 변경한다. 모든 GroupPlotStyle object 의 collection은 CivilDocument.Styles.GroupPlotStyles collection에 포함되어 있다. GroupPlotStyle은 평면뷰를 위한 설정만 포함하고 설정은 GetDisplayPlan() 매서드로 접근된다.
ObjectId groupPlotStyleId = _civildoc.Styles.GroupPlotStyles.Add("New GroupPlot Style");
GroupPlotStyle groupPlotStyle = ts.GetObject(groupPlotStyleId, OpenMode.ForWrite) as GroupPlotStyle;
groupPlotStyle.GetDisplayPlan(GroupPlotDisplayStyleType.Border).Color = Color.FromRgb(23, 54, 232);
GroupPlotStyle groupPlotStyle = ts.GetObject(groupPlotStyleId, OpenMode.ForWrite) as GroupPlotStyle;
groupPlotStyle.GetDisplayPlan(GroupPlotDisplayStyleType.Border).Color = Color.FromRgb(23, 54, 232);
SampleLineStyle
이 스타일은 샘플 라인이 지표면에 그려지는 방법을 제어한다. 모든 SampleLineStyle object의 collection은 CivilDocument.Style.SampleLineStyles collection안에 있다. SampleLineStyle은 모델뷰(GetDisplayStyleModel() 매서드를 통한)와 평면뷰(GetDisplayStylePlan() 매서드를 통한)모두를 위한 설정을 포함한다.
ObjectId sampleLineStyleId = _civildoc.Styles.SampleLineStyles.Add("New SampleLine Style");
SampleLineStyle sampleLineStyle = ts.GetObject(sampleLineStyleId, OpenMode.ForWrite) as SampleLineStyle;
// Display lines in violet
sampleLineStyle.GetDisplayStylePlan(SampleLineDisplayStyleType.Lines).Color = Color.FromColorIndex(ColorMethod.ByAci, 200);
sampleLineStyle.GetDisplayStyleModel(SampleLineDisplayStyleType.Lines).Color = Color.FromColorIndex(ColorMethod.ByAci, 200);
SampleLineStyle sampleLineStyle = ts.GetObject(sampleLineStyleId, OpenMode.ForWrite) as SampleLineStyle;
// Display lines in violet
sampleLineStyle.GetDisplayStylePlan(SampleLineDisplayStyleType.Lines).Color = Color.FromColorIndex(ColorMethod.ByAci, 200);
sampleLineStyle.GetDisplayStyleModel(SampleLineDisplayStyleType.Lines).Color = Color.FromColorIndex(ColorMethod.ByAci, 200);
SectionStyle
이 스타일은 지표면 횡단면이 단면도뷰 그래프에 표시되는 방법을 제어한다. 모든 SectionStyle object의 collection은 CivilDocument.Styles.SectionStyles collection안에 있다. SectionStyle은 평면뷰의 설정만 포함하고, GetDisplayStyleSection() 매서드를 통해서 접근된다.
ObjectId sectionStyleId = _civildoc.Styles.SectionStyles.Add("New Section Style");
SectionStyle sectionStyle = ts.GetObject(sectionStyleId, OpenMode.ForWrite) as SectionStyle;
sectionStyle.GetDisplayStyleSection(SectionDisplayStyleSectionType.Segments).Color = Color.FromRgb(180,0,255);
SectionStyle sectionStyle = ts.GetObject(sectionStyleId, OpenMode.ForWrite) as SectionStyle;
sectionStyle.GetDisplayStyleSection(SectionDisplayStyleSectionType.Segments).Color = Color.FromRgb(180,0,255);
Sections
Sections는 지표면을 가로질러 자른 지형 elevation을 표현한다. 이 지표면은 corridor 지표면, 관망, 그리고 grading을 포함하고 지정된 샘플 라인 그룹과 관련되어 동작한다. Sections는 source(지표면 또는 corridor 형태) 에서 샘플링 된다. .NET API 에서, sections를 위한 소스는 SectionSource object에 의해서 노출된다. SampleLineGroup은 SectionSource의 collection을 포함하고, 이것은 SampleLineGroup.GetSectionSource() 매서드에 의해서 접근할 수 있다.
이 절의 주제
- Sections 생성
- Section 사용
- SectionView 스타일 생성
Sections 생성
Sections는 GetSectionSources()에 의해서 리턴된 사용가능 SectionSource의 collection 수집에 의해서 SampleLineGroup에 생성된다. 이것은 SectionSource object를 위한 ObjectIds의 collection이다.기본적으로, 이 collection은 사용가능한 모든 지표면과 유효한 Corridor Shape을 위한 SectionSource를 포함한다. SectionSource object의 타입은 SourceType 속성에 있는 것과 연관된다. 특정 지표면이나 Corridor Shape을 샘플링하기 위해, 그것과 대응되는 SectionSource.IsSample 속성이 True로 설정되어 있다.
이 예제에서, 사용자는 선형을 선택하는 메세지를 표시한다. 새 SampleLineGroup이 생성되고, SampleLineGroup의 SectionSourceCollection이 반복된다. TIN 표면을 위한 SectionSeource가 샘플링 된다.
// prompt user to select an alignment, and then create a new SampleLineGroup for the Alignment:
ObjectId alignmentId = promptForEntity("Select an Alignment to add sample lines to:", typeof(Alignment));
Alignment alignment = ts.GetObject(alignmentId, OpenMode.ForWrite) as Alignment;
ObjectId sampleLineGroupId = SampleLineGroup.Create("New Group", alignmentId);
SampleLineGroup sampleLineGroup = ts.GetObject(sampleLineGroupId, OpenMode.ForWrite) as SampleLineGroup;
// Create a sample line.
ObjectId sampleLineId = SampleLine.Create("sample line 1", sampleLineGroupId, alignment.StartingStation);
// Get the available section sources for the SampleLineGroup
// SampleLineGroup must be OpenMode.ForWrite for this to work:
SectionSourceCollection sectionSources = sampleLineGroup.GetSectionSources();
_editor.WriteMessage("Number of section sources: {0}\n", sectionSources.Count);
ObjectId surfaceId = ObjectId.Null;
foreach (SectionSource sectionSource in sectionSources)
{
_editor.WriteMessage("Section source is sampled: {0} update mode: {1} type: {2}\n", sectionSource.IsSampled, sectionSource.UpdateMode, sectionSource.SourceType);
// if it's a TinSurface, let's sample it:
if (sectionSource.SourceType == SectionSourceType.TinSurface)
{
// save for later:
surfaceId = sectionSource.SourceId;
// we can also get more info about the source type from its objectId
TinSurface sourceSurface = ts.GetObject(sectionSource.SourceId, OpenMode.ForRead) as TinSurface;
_editor.WriteMessage("Adding TIN surface {0} to Section Sources for SampleLineGroup\n", sourceSurface.Name);
sectionSource.IsSampled = true;
}
}
ObjectId alignmentId = promptForEntity("Select an Alignment to add sample lines to:", typeof(Alignment));
Alignment alignment = ts.GetObject(alignmentId, OpenMode.ForWrite) as Alignment;
ObjectId sampleLineGroupId = SampleLineGroup.Create("New Group", alignmentId);
SampleLineGroup sampleLineGroup = ts.GetObject(sampleLineGroupId, OpenMode.ForWrite) as SampleLineGroup;
// Create a sample line.
ObjectId sampleLineId = SampleLine.Create("sample line 1", sampleLineGroupId, alignment.StartingStation);
// Get the available section sources for the SampleLineGroup
// SampleLineGroup must be OpenMode.ForWrite for this to work:
SectionSourceCollection sectionSources = sampleLineGroup.GetSectionSources();
_editor.WriteMessage("Number of section sources: {0}\n", sectionSources.Count);
ObjectId surfaceId = ObjectId.Null;
foreach (SectionSource sectionSource in sectionSources)
{
_editor.WriteMessage("Section source is sampled: {0} update mode: {1} type: {2}\n", sectionSource.IsSampled, sectionSource.UpdateMode, sectionSource.SourceType);
// if it's a TinSurface, let's sample it:
if (sectionSource.SourceType == SectionSourceType.TinSurface)
{
// save for later:
surfaceId = sectionSource.SourceId;
// we can also get more info about the source type from its objectId
TinSurface sourceSurface = ts.GetObject(sectionSource.SourceId, OpenMode.ForRead) as TinSurface;
_editor.WriteMessage("Adding TIN surface {0} to Section Sources for SampleLineGroup\n", sourceSurface.Name);
sectionSource.IsSampled = true;
}
}
표면과 Corridor Shape은 Quantity Takeoff 표를 위한 물량 계산서를 만들기 위해서도 사용된다. 이 표면과 shape는 MaterialSectionSource object에 의해 표현된다. SectionSource object와는 다르게, 이 isSampled 속성은 읽기전용이다, 그리고 source를 sample하는데 사용되지 않는다. 표면과 shape를 샘플링 하기 위해, 그것은 QTOMaterial.Add() 매서드에 의해서 QTOMaterial에 추가된다.
이것들은 표면과 shape을 QTOMaterial에 추가하기 위한 많은 단계가 있다. 첫번재로 QTOMaterialList는
SampleLineGroup.MaterialLists.Add() 매서드로 SampleLinegroup에 추가된다. 그 다음 새 QTOMaterial은 QTOMaterialList에 추가된다. 마지막으로, 표면과 shape가 QTOMaterial에 추가된다.
SampleLineGroup.MaterialLists.Add() 매서드로 SampleLinegroup에 추가된다. 그 다음 새 QTOMaterial은 QTOMaterialList에 추가된다. 마지막으로, 표면과 shape가 QTOMaterial에 추가된다.
아래 코드 조각은 이런 단계를 보여준다. 위에서 제공된 샘플에서 계속된다.(SectionSource로 사용된 저장된 surfaceId를 사용한다)
// Material Sources are grouped in QTOMaterialLists, so we create a QTOMaterialList first:
QTOMaterialList qtoMaterialList = sampleLineGroup.MaterialLists.Add("New Material List");
// Add the material:
QTOMaterial qtoMaterial = qtoMaterialList.Add("New Material");
// Add the material item to either a surface or a corridor shape code.
// Here we use the TIN surface ID for EG sampled above:
qtoMaterial.Add(surfaceId);
// This is how you access all the Material Section Sources:
// Get the material sources
MaterialSectionSourceCollection materialSectionSources = sampleLineGroup.GetMaterialSectionSources();
_editor.WriteMessage("Number of material section sources: {0}\n", materialSectionSources.Count);
// Note that unlike SectionSource, isSampled is read-only
foreach (MaterialSectionSource materialSectionSource in materialSectionSources)
{
_editor.WriteMessage("Material source is sampled: {0} update mode: {1} type: {2} material: {3}\n", materialSectionSource.IsSampled,
materialSectionSource.UpdateMode, materialSectionSource.SourceType, materialSectionSource.Material);
}
QTOMaterialList qtoMaterialList = sampleLineGroup.MaterialLists.Add("New Material List");
// Add the material:
QTOMaterial qtoMaterial = qtoMaterialList.Add("New Material");
// Add the material item to either a surface or a corridor shape code.
// Here we use the TIN surface ID for EG sampled above:
qtoMaterial.Add(surfaceId);
// This is how you access all the Material Section Sources:
// Get the material sources
MaterialSectionSourceCollection materialSectionSources = sampleLineGroup.GetMaterialSectionSources();
_editor.WriteMessage("Number of material section sources: {0}\n", materialSectionSources.Count);
// Note that unlike SectionSource, isSampled is read-only
foreach (MaterialSectionSource materialSectionSource in materialSectionSources)
{
_editor.WriteMessage("Material source is sampled: {0} update mode: {1} type: {2} material: {3}\n", materialSectionSource.IsSampled,
materialSectionSource.UpdateMode, materialSectionSource.SourceType, materialSectionSource.Material);
}
Sections 사용
각 샘플 라인은 sections의 collection을 포함한다. 이 section의 collection은 샘플 라인을 기반으로 존재한다. 각 단면도는 Section타입의 object에 의해서 표현되고, 단면도를 따르는 표면의 통계를 검색하는 매서드를 포함한다.
Autodesk.Civil.DatabaseServices.Section과 Autodesk.AutoCAD.DataService.Section은 모호한 이름지정이 있다는 것을 주의하라. 이 당신의 코드에서 클래스명을 완전히 한정하여 이것을 해결할 수 있고, 아니면 alias 구문을 사용해서 명확한 참조로 해결할 수 있다 :
using Section = Autodesk.Civil.DatabaseServices.Section;
이 예제에서, 우리는 선형의 첫번째 SampleLineGroup을 가져오고, SampleLineGroup에 있는 SampleLines를 반복한다. 그리고 난 다음 SampleLine에 있는 각 Section을 반복한다. 우리는 Section의 elevation 정보를 출력하고, 업데이트 모드를 설정한다.
// Use Centerline (1)
Alignment alignment = null;
foreach (ObjectId alignmentId in _civildoc.GetAlignmentIds())
{
Alignment a = ts.GetObject(alignmentId, OpenMode.ForRead) as Alignment;
if (a.Name == "Centerline (1)") { alignment = a; break; }
}
// Get the first sample line group, SLG-1:
SampleLineGroup sampleLineGroup = ts.GetObject(alignment.GetSampleLineGroupIds()[0], OpenMode.ForRead) as SampleLineGroup;
foreach (ObjectId sampleLineId in sampleLineGroup.GetSampleLineIds())
{
SampleLine sampleLine = ts.GetObject(sampleLineId, OpenMode.ForRead) as SampleLine;
foreach ( ObjectId sectionId in sampleLine.GetSectionIds()){
Section section = ts.GetObject(sectionId, OpenMode.ForWrite) as Section;
_editor.WriteMessage("Section {0} elevation max: {1} min: {2}\n", section.Name, section.MaximumElevation, section.MinmumElevation);
// set the section update mode:
section.UpdateMode = SectionUpdateType.Dynamic;
}
}
Alignment alignment = null;
foreach (ObjectId alignmentId in _civildoc.GetAlignmentIds())
{
Alignment a = ts.GetObject(alignmentId, OpenMode.ForRead) as Alignment;
if (a.Name == "Centerline (1)") { alignment = a; break; }
}
// Get the first sample line group, SLG-1:
SampleLineGroup sampleLineGroup = ts.GetObject(alignment.GetSampleLineGroupIds()[0], OpenMode.ForRead) as SampleLineGroup;
foreach (ObjectId sampleLineId in sampleLineGroup.GetSampleLineIds())
{
SampleLine sampleLine = ts.GetObject(sampleLineId, OpenMode.ForRead) as SampleLine;
foreach ( ObjectId sectionId in sampleLine.GetSectionIds()){
Section section = ts.GetObject(sectionId, OpenMode.ForWrite) as Section;
_editor.WriteMessage("Section {0} elevation max: {1} min: {2}\n", section.Name, section.MaximumElevation, section.MinmumElevation);
// set the section update mode:
section.UpdateMode = SectionUpdateType.Dynamic;
}
}
SectionView 스타일 생성
SectionViewStyle object는 그래프 축, 텍스트 그리고 문자가 그려지는 방법의 모든 형태를 관리한다. SectionViewStyle 내에는 상, 하, 좌, 중심 수직선 그리고 오른쪽 축과 연관되는 설정이 있다. 모든 단면도 뷰 스타일은 CivilDocument.Styles.SectionViewStyles collection에 저장된다.
Autodesk.Civil.DatabaseServices.Style.SectionViewStyle과 Autodesk.AutoCAD.DatabaseService.SectionViewStyle사이에는 모호한 이름이 있다는 것을 주의하라. 당신의 코드에서 클래스명을 완전히 제한하는 것으로 이것을 해결할수 있고, 아니면 다음과 같은 alias 구문을 사용해서 참조를 모호하지 않게 할수 있다 :
using SectionViewStyle = Autodesk.Civil.DatabaseServices.Styles.SectionViewStyle;
새 스타일은 새 스타일의 이름과 함께 Add() 매서드로 만들어 진다. 이 스타일은 평면뷰 방향에만 사용된다, 그리고 component 표현 설정은 SectionViewStyle.GetDisplayStylePlan()으로 접근된다. 이 매서드는 SectionViewDisplayStyleType 열거식을 취한다. 이 열거식은 get 하기 위한 component를 지정한다. 다른 스타일 설정은 SectionViewStyle object를 위한 속성을 통해서 접근된다. BottomAxis와 GraphStyle 같은 것이 있다.
이 예제에서, 새 SectionViewStyle 이 생성되고, 그래프 제목 표시 component line 타입이 “DOT”로 설정된다.
ObjectId sectionViewStyleId = _civildoc.Styles.SectionViewStyles.Add("New SectionView Style");
SectionViewStyle sectionViewStyle = ts.GetObject(sectionViewStyleId, OpenMode.ForWrite) as SectionViewStyle;
sectionViewStyle.GetDisplayStylePlan(SectionViewDisplayStyleType.GraphTitle).Linetype = "DOT";
SectionViewStyle sectionViewStyle = ts.GetObject(sectionViewStyleId, OpenMode.ForWrite) as SectionViewStyle;
sectionViewStyle.GetDisplayStylePlan(SectionViewDisplayStyleType.GraphTitle).Linetype = "DOT";
그래프의 제목은 SectionViewStyle.GraphStyle.TitleStyle 속성에 의해서 제어된다. GraphTitleStyle의 타입은 object 이다. 제목 스타일 object는 위치, 스타일, 제목의 외곽선을 조정할 수 있다. 제목의 텍스트는 다음 속성 필드의 어떤것이라도 포함할 수 있다 :
<[Section View Description(CP)]>
|
<[Section View Name(CP)]>
|
<[Parent Alignment(CP)]>
|
<[Section View Station(Uft|FS|P3|RN|Sn|OF|AP|B2|TP|EN|W0|DZY)]>
|
<[Section View Datum Value(Uft|P3|RN|AP|Sn|OF)]>
|
<[Section View Width(Uft|P3|RN|AP|Sn|OF)]>
|
<[Left Width(Uft|P3|RN|AP|Sn|OF)]>
|
<[Right Width(Uft|P3|RN|AP|Sn|OF)]>
|
<[Drawing Scale(P3|RN|AP|OF)]>
|
<[Graph View Vertical Scale(P3|RN|AP|OF)]>
|
<[Graph View Vertical Exageration(P3|RN|AP|OF)]>
|
<[Sample Line Name(CP)]>
|
<[Sample Line Group(CP)]>
|
<[Sample Line Number(Sn)]>
|
모든 축 스타일은 AxisStyle 클래스를 기반으로 한다. 축 스타일 object는 축 자체, 눈금 표시 그리고 축 따라 배치되는 텍스트, 축의 목적을 설명하는 주석의 표시 스타일을 제어한다. 주석, 위치, 그리고 크기는 AxisStyle.TitleStyle 속성을 통해서 설정된다. AxisTitleStyle의 타입은 object이다. 주석 문자는 다음 속성 필드의 어떤것이라도 사용할 수 있다. :
Valid property fields for AeccAxisTitleStyle.Text
|
Axes
|
<[Section View Station(Uft|FS|P2|RN|AP|Sn|TP|B2|EN|W0|OF)]>
|
top, bottom
|
<[Section View Width(Uft|P2|RN|AP|Sn|OF)]>
|
top, bottom
|
<[Left Width(Uft|P2|RN|AP|Sn|OF)]>
|
top, bottom
|
<[Right Width(Uft|P2|RN|AP|Sn|OF)]>
|
top, bottom
|
<[Elevation Range(Uft|P2|RN|AP|Sn|OF)]>
|
left, right, center
|
<[Minimum Elevation(Uft|P2|RN|AP|Sn|OF)]>
|
left, right, center
|
<[Maximum Elevation(Uft|P2|RN|AP|Sn|OF)]>
|
left, right, center
|
각 축 스타일내에는 축을 따라 배치된 눈금표시를 지정하기 위한 속성들이 있다. 주 눈금과 부 눈금 모두 AxisTickStyle 타입의 object에 의해서 표현된다. AxisTickStyle은 위치, 크기, 그리고 눈금의 비주얼 스타일 을 관리한다. 이들은 Interval과 Size 속성을 통해서 관리한다.
Note : 대부분의 스타일 속성이 도면 단위를 사용하는지만, Interval 속성은 표면 단위를 사용한다.
AxisTickStyle object는 각 눈금에 표시된 문자를 설정한다. 이 문자는 다음 속성 필드의 어떤것이라도 포함한다. :
<[Section View Point Offset Side(CP)]>
|
<[Section View Point Offset(Uft|P3|RN|Sn|OF|AP)]>
|
<[Graph View Abscissa Value(Uft|P3|RN|AP|Sn|OF)]>
|
댓글 없음:
댓글 쓰기