轉帖|使用教程|編輯:況魚杰|2019-10-08 11:31:26.577|閱讀 841 次
概述:本教程轉自屈景輝的Teechart應用技術詳解——快速圖表制作工具一書,本節我們將會介紹此書的第二章的第四小節——Teechart組件的應用實例:三維畫板、工具和TeeOpenGL。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
Steema公司和慧都科技針對中國市場聯合推出中文版TeeChart for .NET圖表控件,一共漢化2000個詞條(17000個單詞),漢化文檔35000個單詞,包括控件設計時與運行時的界面漢化以及控件使用向導文檔的漢化,總漢化90%以上!
TeeChart for .NET中文版讓您在使用和學習上沒有任何語言障礙,至少可以節省30%的開發時間。TeeChart for .NET中文版具有易上手,使用方便,穩定性好,性價比高,價格優惠等優勢,并且針對Web應用提供無限制服務器分發授權方式,非常有利于產品集成。
Teechart組件的應用實例
Steema為了充分發揮TeeChart頁圖表組件的功能,將圖表編輯器的選項卡進行了拆分,構成獨立的可視或非可視組件,由程序設計員根據用戶的功能要求進行重新組合,以滿足用戶需要。
三維畫板、工具和TeeOpenGL
演示:Daw3D、 TeeCommander和TeeOpenGL組件。
功能:Draw3D是能夠繪制具有3D功能的畫板,可以在其上進行2D和3D幾何圖形、線條、文字的繪制以及位圖顯示與背景設置等功能。在TeeCommander組件的支持下,可以實現打印、拷貝、導出、放大、旋轉等操作,與TeeOpnGL組件結合可實現OpenGL三維圖形的繪制。
設計:
Draw3D組件的三維畫布 Canvas: TVanvas3D,提供了豐富的2D、3D幾何圖形、線段、文字的圖形繪制,下列代碼完成有關圖形的繪制:
var MyBit:TBitmap; begin with Draw3D1 do begin MyBit:=tbITMAP.Create; MyBit.LoadFromFile('Background. bmp); Canvas.Draw(7, 7, Mybit); Canvas.Pen.Style:= psDashDot; if CheckBox3.Checked then //根據檢查框狀態確定是否繪制坐標軸 begin Canvas.MoveTo3D(251,10,0); Canvas.lineTo3D(251,273,0); //縱坐標 Canvas.MoveTo3D(10, 141, -100); Canvas.LineTo3D(493, 141, 100); //橫坐標(左下,右上) Canvas.MoveTo3D(10, 141, 100); Canvas.LineTo3D(493, 141, -100); //橫坐標(左上、右下) end; Canvas.Pen.Color:=clGreen; Canvas.Brush.Color:=RGB(125, 128,128); Canvas.Pie3D(100,200,60,15,30,100,15,90,CheckBox1.Checked,true); //圓餅 Canvas.Brush.Color:=RGB(125, 120, 128); Canvas.Pyramid(true,300,50,400, 100,0,50,CheckBox1.Checked); Canvas.Brush.Color:=RGB(255,0,0); Canvas.Sphere(Draw3D1.ChartXCenter+150,Draw3D1.ChartYcenter+80,0, 50); //球體 Canvas.Cube(250, 270, 40,90,0,10,CheckBox1.Checked); //立方體 Canvas.Brush.Color:=RGB(0,128,0); Canvas. Cylinder(true,150,80,190,160,10,70,CheckBox1.Checked); //圓柱體 Canvas.Font.Color:=clRed; Canvas.Font.Name:='仿宋_GB2312'; Canvas.BackMode:=cbmTransparent; Canvas.Font.Size:=16; Canvas.TextOut3D(10,250,45,'這是一個Draw3D組件功能演示'); Canvas.RotateLabe13D(20,200,10,'旋轉文本',90.0);
Draw3D組件的3D幾何圖形繪制函數中有一個參數DarkSides:Boolean,是用來控制繪制圖形時是否帶陰影以增強立體感,所以本程序在該函數的這個參數中使用了Check Box 1.Checked,由CheckBox檢查框是否選中表示是否繪制陰影。例如(繪制錐體):
CheCanvas.Pyramid (true, 300, 50, 400, 100, 0, 50, CheckBox1.Checked);
因此,當單擊ChckBox1時,3D畫板的圖形外觀就會發生變化。
背景漸進和坐標軸檢查框用于控制是否在背景中使用漸進色和繪制坐標軸。控制坐標軸的繪制代碼是放在Draw3D的OnPaint事件中。
實現 OpenGL功能,只需在程序設計階段將TeeOpenGL組件的 TeePanel設為Draw3D1和 Active屬性設為true,或者在主窗體的 OnCreate事件中加入以下代碼即可:
TeeOpenGL1.TeePanel=Draw3D1; TeeOpenGL1.Active:=true;
如果窗口有圖表組件Chart,將TeeOpenGL1.TeePanel設為 Chart,這時打開的圖表編輯器就增加了OpenGL選項卡,如下圖所示。
設置:
組件名稱 | 屬性名 | 設定值 | 備注 |
TChart | Name | Chart1 | 用圖表編輯器設定 |
TDraw3D | Name | TDraw3D1 | 一般不需要特殊設置 |
TTeeCommander | Name | TeeCommander1 | 命令工具組件 |
Panel | Chart1 | OpenGL組件名稱 | |
TTeeOpenGL | TeePanel | TeeOpenGL1 | |
Name | Draw3D1 | OpenGL的畫板 | |
Active | true | 激活TeeOpenGL1組件 | |
TCheckBox | Name | CheckBox1 | 陰影控制 |
Checked | true | ||
Caption | 陰影 | ||
TCheckBox | Name | CheckBox2 | 背景漸進色 |
Checked | true | ||
Caption | 背景漸進 | ||
TCheckBox | Name | CheckBox3 | 坐標軸控制 |
Checked | true | ||
Caption | 坐標軸 | ||
TCheckBox | Name | CheckBox4 | OpenGL功能控制 |
Checked | false | ||
Caption | OpenGL |
技巧:
(OpenGL( Open Graphic Library)即開放圖形庫,是一個3D的計算機圖形和模型庫,是由SGI公司于1992年開發的、獨立于操作系統和硬件環境的、具有強大的圖形功能和良好的跨平臺移植能力的一個圖形標準,它已被廣泛應用于可視化、實體造型、 CADICAM和模仿真等領域。利用Draw3D和 TeeOpenGL的配合就可實現 OpenGL的功能。不過 OpenGL本身是一個計算機應用領域,真正要繪制出高質量的圖形還需查閱有關 OpenGL的專門書籍,這里不再贅述。
從本例看出工具組件 Tee Commander可以對 OpenGl產生的圖形進行各種操作。
界面:程序運行后的界面如下所示。
圖1
圖2
下一節我們將會介紹Teechart組件的應用實例:序列與函數庫組件。將會有演示,功能,設計,設置,技巧和界面六個方面的介紹。如果有對Teechart圖表感興趣的朋友,可以多多關注本教程,并且歡迎在評論區留言。
相關資料推薦:
現TeeChart for .NET,TeeChart for JavaScript/HTML5,TeeChart for Xamarin.Android等均已加入在線訂購,現在搶購可立享優惠!
關注慧聚IT微信公眾號???,了解產品的最新動態及最新資訊。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: