私はobjective-jとフレームワークにまったく慣れていないので、ドリルダウンしていくつかのコードを理解しようとしましたが、オブジェクト(または構造体)CGRectで迷子になっています。
完全なドキュメントは次のとおりです:カプチーノ
さて、今私はドリルダウンしていて、CPViewクラスがどのように機能するかを学ぼうとしています:CPView.j
今、私はいたるところにCGRectオブジェクト(または構造)を見て、CGRectがどこで定義されているかを一生理解することはできません。これはどのように作動しますか?何かが足りないような気がします。
私が見つけた最も近いものはCGGeometry.jとCGGeometry.hですが、それでもCGRect構造またはオブジェクトは定義されていません。
誰かが私を助けることができますか?CGRect構造体またはオブジェクトをインスタンス化するにはどうすればよいですか?また、どこで定義されていますか?何が含まれていますか?などなど...
CGRectを作成する主な方法は、ここで説明するCGRectMake関数を使用することです。
これがどのように機能しているかを把握しているような気がしません。
ありがとうございました。
アップデート:
コードをもう少し見てみると、23行目、30行目、37行目は、JavaScriptオブジェクトの説明のように見えます。これは正しいです?よくわかりません...これらの.jファイルを翻訳しているものは、CGRectがすでに何であるかを認識していますか?これが、(CGRect)タイプのカーストとオブジェクトを使用できる理由ですか?CGRectsは、これまでに使用した他のオブジェクトと同じではないようです。その理由を知りたいです:)。
再度、感謝します。
00023 #define _CGPointMake(x_, y_) { x:x_, y:y_ }
00024 #define _CGPointMakeCopy(aPoint) _CGPointMake(aPoint.x, aPoint.y)
00025 #define _CGPointMakeZero() _CGPointMake(0.0, 0.0)
00026
00027 #define _CGPointEqualToPoint(lhsPoint, rhsPoint) (lhsPoint.x == rhsPoint.x && lhsPoint.y == rhsPoint.y)
00028 #define _CGStringFromPoint(aPoint) ("{" + aPoint.x + ", " + aPoint.y + "}")
00029
00030 #define _CGSizeMake(width_, height_) { width:width_, height:height_ }
00031 #define _CGSizeMakeCopy(aSize) _CGSizeMake(aSize.width, aSize.height)
00032 #define _CGSizeMakeZero() _CGSizeMake(0.0, 0.0)
00033
00034 #define _CGSizeEqualToSize(lhsSize, rhsSize) (lhsSize.width == rhsSize.width && lhsSize.height == rhsSize.height)
00035 #define _CGStringFromSize(aSize) ("{" + aSize.width + ", " + aSize.height + "}")
00036
00037 #define _CGRectMake(x, y, width, height) { origin: _CGPointMake(x, y), size: _CGSizeMake(width, height) }