Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
CircleOutline Class Reference
Inheritance diagram for CircleOutline:
ModifiedShadow

Public Member Functions

override void ModifyVertices (List< UIVertex > verts)
 
- Public Member Functions inherited from ModifiedShadow
override void ModifyMesh (VertexHelper vh)
 
virtual void ModifyVertices (List< UIVertex > verts)
 

Properties

int circleCount [get, set]
 
int firstSample [get, set]
 
int sampleIncrement [get, set]
 

Private Attributes

int m_circleCount = 2
 
int m_firstSample = 4
 
int m_sampleIncrement = 2
 

Detailed Description

Definition at line 5 of file CircleOutline.cs.

Member Function Documentation

◆ ModifyVertices()

override void CircleOutline.ModifyVertices ( List< UIVertex >  verts)
inlinevirtual

Reimplemented from ModifiedShadow.

Definition at line 64 of file CircleOutline.cs.

65 {
66 if (!IsActive())
67 {
68 return;
69 }
70 int num = (m_firstSample * 2 + m_sampleIncrement * (m_circleCount - 1)) * m_circleCount / 2;
71 int num2 = verts.Count * (num + 1);
72 if (verts.Capacity < num2)
73 {
74 verts.Capacity = num2;
75 }
76 int count = verts.Count;
77 int num3 = 0;
78 int num4 = m_firstSample;
79 float num5 = base.effectDistance.x / (float)circleCount;
80 float num6 = base.effectDistance.y / (float)circleCount;
81 for (int i = 1; i <= m_circleCount; i++)
82 {
83 float num7 = num5 * (float)i;
84 float num8 = num6 * (float)i;
85 float num9 = MathF.PI * 2f / (float)num4;
86 float num10 = (float)(i % 2) * num9 * 0.5f;
87 for (int j = 0; j < num4; j++)
88 {
89 int num11 = num3 + count;
90 ApplyShadow(verts, base.effectColor, num3, num11, num7 * Mathf.Cos(num10), num8 * Mathf.Sin(num10));
91 num3 = num11;
92 num10 += num9;
93 }
94 num4 += m_sampleIncrement;
95 }
96 }

References circleCount, m_circleCount, m_firstSample, and m_sampleIncrement.

Member Data Documentation

◆ m_circleCount

int CircleOutline.m_circleCount = 2
private

Definition at line 8 of file CircleOutline.cs.

Referenced by ModifyVertices().

◆ m_firstSample

int CircleOutline.m_firstSample = 4
private

Definition at line 11 of file CircleOutline.cs.

Referenced by ModifyVertices().

◆ m_sampleIncrement

int CircleOutline.m_sampleIncrement = 2
private

Definition at line 14 of file CircleOutline.cs.

Referenced by ModifyVertices().

Property Documentation

◆ circleCount

int CircleOutline.circleCount
getset

Definition at line 16 of file CircleOutline.cs.

17 {
18 get
19 {
20 return m_circleCount;
21 }
22 set
23 {
24 m_circleCount = Mathf.Max(value, 1);
25 if (base.graphic != null)
26 {
27 base.graphic.SetVerticesDirty();
28 }
29 }
30 }

Referenced by ModifyVertices().

◆ firstSample

int CircleOutline.firstSample
getset

Definition at line 32 of file CircleOutline.cs.

33 {
34 get
35 {
36 return m_firstSample;
37 }
38 set
39 {
40 m_firstSample = Mathf.Max(value, 2);
41 if (base.graphic != null)
42 {
43 base.graphic.SetVerticesDirty();
44 }
45 }
46 }

◆ sampleIncrement

int CircleOutline.sampleIncrement
getset

Definition at line 48 of file CircleOutline.cs.

49 {
50 get
51 {
52 return m_sampleIncrement;
53 }
54 set
55 {
56 m_sampleIncrement = Mathf.Max(value, 1);
57 if (base.graphic != null)
58 {
59 base.graphic.SetVerticesDirty();
60 }
61 }
62 }

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