我有一個三角形求解器,我想要一種方法來使用從答案中得到的值在與之匹配的屏幕上繪製三角形。如何以編程方式繪製三角形
回答
如果你繼承一個UIView可以實現這樣的事情在drawRect中繪製一個三角形:
-(void)drawRect:(CGRect)rect
{
CGContextRef ctx = UIGraphicsGetCurrentContext();
CGContextBeginPath(ctx);
CGContextMoveToPoint (ctx, CGRectGetMinX(rect), CGRectGetMinY(rect)); // top left
CGContextAddLineToPoint(ctx, CGRectGetMaxX(rect), CGRectGetMidY(rect)); // mid right
CGContextAddLineToPoint(ctx, CGRectGetMinX(rect), CGRectGetMaxY(rect)); // bottom left
CGContextClosePath(ctx);
CGContextSetRGBFillColor(ctx, 1, 1, 0, 1);
CGContextFillPath(ctx);
}
對於如何做到這一點我仍然有點困惑。對不起,我對編程還很陌生。 – user804306
創建一個Objective-C類,它是UIView的子類。在類中實現drawRect:方法,當視圖需要在屏幕上繪製時,iOS將調用drawRect:。實例化該類的對象並將其添加到視圖控制器的視圖中。如果這沒有意義,那麼也許你應該從[這個問題]中獲得一些基礎知識(http://stackoverflow.com/questions/3315577/good-iphone-programming-books)。 – progrmr
好吧我理解添加的Objective-c類,但當用戶按下按鈕將自定義三角形繪製到屏幕時,我會調用什麼? – user804306
- (void)drawRect:(CGRect)rect {
CGContextRef ctx = UIGraphicsGetCurrentContext();
CGContextClearRect(ctx, rect);
// Draw a triangle
CGContextSetRGBFillColor(ctx, 255, 160, 122, 1);
CGContextBeginPath(ctx);
CGContextMoveToPoint (ctx, 290, 35); // top
CGContextAddLineToPoint(ctx, 350, 165); // right
CGContextAddLineToPoint(ctx, 230,165); // left
CGContextClosePath(ctx);
CGContextSetRGBFillColor(ctx, 1, 1, 1, 1);
CGContextFillPath(ctx);
}
是)))@FelixSFD –
此答案如何爲問題添加任何新值?它看起來只是程序員的硬編碼值。而且它只是純粹的代碼,沒有單一的解釋。 –
對不起,我是初學者,只是想表現出我繪製三角形的方式。是的,這是我的一個項目的代碼。可能會對其他人有所幫助...... –
斯威夫特3相當於爲progrmr
的回答是:
override func draw(_ rect: CGRect) {
guard let context = UIGraphicsGetCurrentContext() else { return }
context.beginPath()
context.move(to: CGPoint(x: rect.minX, y: rect.minY))
context.addLine(to: CGPoint(x: rect.maxX, y: rect.midY))
context.addLine(to: CGPoint(x: (rect.minX), y: rect.maxY))
context.closePath()
context.setFillColor(red: 1.0, green: 1.0, blue: 1.0, alpha: 1.0)
context.fillPath()
}
- 1. 三角形繪製方法
- 2. 繪製三角形
- 3. 在三角形的三角形中繪製三角形
- 4. Android如何以編程方式創建三角形和矩形形狀?
- 5. 如何繪製和定位三角形?
- 6. 如何繪製相反的三角形?
- 7. 如何在java中繪製三角形?
- 8. GL_LINE_LOOP如何繪製三角形?
- 9. 如何繪製一個三角形UIButton
- 10. 如何使用OpenTK繪製三角形?
- 11. 繪製黃金三角形式的Java
- 12. 尋找繪製三角形
- 13. Direct3D 11 - 繪製三角形
- 14. 繪製旋轉三角形
- 15. 繪製紋理三角形
- 16. 繪製三角形iOS
- 17. 如何在Android中以編程方式繪製條形圖?
- 18. 如何在javascript中以編程方式繪製矩形框
- 19. 以編程方式繪製具有圓角部分邊角的形狀
- 20. 如何繪製一個完美的三角形六角形?
- 21. 帶圓角的繪製三角形
- 22. 在Blend中繪製圓角三角形
- 23. 用三角形風扇繪製圓形
- 24. Android:在三角形上繪製三角形
- 25. android如何在畫布上繪製三角形,星形,方形,心形
- 26. 以編程方式繪製iOS 7樣式的圓形
- 27. 繪製一個圓角矩形編程
- 28. 如何繪製彎曲邊界的右下角三角形?
- 29. 如何繪製直角三角形與蟒蛇
- 30. 如何繪製一個帶有圓角半徑的三角形?
通過「三角解算器」我認爲你的意思是你告訴它一個三角形的兩邊,它計算出第三個?這是一個直角三角形嗎? – Schwern
有點,我有一個方法讓用戶輸入關於任何三角形的任何信息組合。如兩面和一角,三面,兩角和一面。所有正確的三角形也是。 – user804306