USAGE:
var response: jhChart<Data>?
DECLARE:
public struct jhChart<Value> {
public let result: Result<Value>
public var value: Value? { return result.value }
...}
structure 의 장점
늘어나는 properties 를 하나에 때려넣을 수 있다.
struct jhData {
internal var mValuesOfDatas : Array<CGFloat> = Array() {
didSet {
if GS.shared.logLevel.contains(.graph) {
print("mValuesOfDatas.count has been changed to \(mValuesOfDatas.count) in jhPanel")
}
}
}
/// Axes
var mCountOfaxes_view : Int = 1
var mUnitOfHorizontalAxes : CGFloat = 100
var mcountOfHorizontalAxes : Int = 3
internal var mVerticalRatioToDraw_view : CGFloat = 1.0
var axisDistance : CGFloat {
get {
return (jhDraw.maxR - mMargin * 2) / CGFloat(mCountOfaxes_view+1)
}
set(distance) {
mCountOfaxes_view = Int(jhDraw.maxR / CGFloat(distance))
}
}
var mCountOfDatas : Int
var mMaxValueOfDatas : CGFloat
var mMinvalueOfDatas : CGFloat
internal var mMargin : CGFloat = 300 //1000.0
//1000.0 is 13.3..%, margin between panel & graph area 0<=martgin<10000.0
init() {
mCountOfDatas = 0
mMaxValueOfDatas = 0
mMinvalueOfDatas = 0
}
.
.
.
그리고 인자(인수, 파라미터, 로 넘길 때 편하다.
복잡하게 안 넘기고
dataLayer = jhLayer(&jhClientServer.mValuesOfDatas, self.data.axisDistance, self.data.mVerticalRatioToDraw_view, self.data.mMargin, mPanelWidth ?? 0, mPanelHeight ?? 0, mFixedPanelWidth, mFixedPanelHeight, layer: 0)
struct 만 넘기자.
'HJH IT Logs' 카테고리의 다른 글
장인어른과 한잔! (0) | 2019.02.03 |
---|---|
iOS의 전문가 : 미노웍스 (0) | 2019.02.03 |
mac locate (0) | 2019.02.03 |
ubuntu 22.04 와 자바 (0) | 2019.02.02 |
스위프트 소스 중에 가장 중요한 소스 from swift.org (0) | 2019.02.02 |
최근댓글