原創(chuàng)|產(chǎn)品更新|編輯:鄭恭琳|2020-01-21 17:31:40.697|閱讀 307 次
概述:工業(yè)生產(chǎn)數(shù)據(jù)處理圖表制作工具ProEssentials v9.5更新發(fā)布,繼續(xù)添加到RenderEngine = Direct3D渲染技術(shù)中,以模仿Direct2D、GdiPlus、Gdi選項(xiàng)中的功能,3D渲染技術(shù)更出色。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
ProEssentials作為一個(gè)分發(fā)免費(fèi)的領(lǐng)先的圖表制作工具,在工程、制造、金融和處理大數(shù)據(jù)集方面被廣泛接受。這都要?dú)w于其出眾的處理速度,完備的功能以及對(duì)渲染和終端用戶(hù)細(xì)節(jié)的重視。
點(diǎn)擊下載ProEssentials v9.5.0.40最新版
v9.5新版本.NET,ActiveX,MFC,VCL圖表功能
9.5版繼續(xù)添加到RenderEngine = Direct3D渲染技術(shù)中,以模仿Direct2D、GdiPlus、Gdi選項(xiàng)中的功能。在DirectX/Direct3D中編寫(xiě)代碼的過(guò)程受到其簡(jiǎn)單三角形和線條的限制,這意味著GdiPlus的高級(jí)繪圖邏輯,Direct2D并不等同于DirectX/Direct3D中的任何內(nèi)容。功能需要100%重新編寫(xiě)。OpenGL、第三方庫(kù)或開(kāi)源不存在任何依賴(lài)關(guān)系:唯一的依賴(lài)關(guān)系是Windows。
注意:v9.5必須切換正常位置計(jì)算,以使Pe3do PolyMode = Bar,條形圖如何點(diǎn)亮以更好地匹配Graph Annotations。通常,這會(huì)使當(dāng)前的3D條形圖看起來(lái)太暗,您需要更改亮光位置。
v9.5改進(jìn)列表:
新屬性可幫助實(shí)現(xiàn)多個(gè)線程:
	#define PEP_bFREEZE
Scope: all control types, Pego, Pesgo, Pe3do, Pepso, Pepco.
.Net, OCX, VCL: use control.Freeze = true / false
DLL: set with PEnset
在輔助工作線程中實(shí)現(xiàn)數(shù)據(jù)更新功能時(shí),此功能與繪畫(huà)一起可以解決穩(wěn)定性問(wèn)題??梢栽O(shè)置Freeze = true,處理更新邏輯,調(diào)用PEreinitializeresetimage(),然后設(shè)置Freeze = false。然后可以選擇調(diào)用Invalidate來(lái)使控件無(wú)效。這不是處理線程問(wèn)題的最佳方法,而是在總數(shù)據(jù)點(diǎn)少于大約100,000的許多情況下最簡(jiǎn)單和可用的方法。我們的WPF界面一直具有此功能,并且非常有用,v9.5在Winform、DLL、OCX和VCL界面中實(shí)現(xiàn)了類(lèi)似的概念。該功能禁用了消息泵,但WM_DESTROY、WM_NCDESTROY和WM_PAINT除外。WM_PAINT處理程序僅將窗口標(biāo)記為已驗(yàn)證并返回。當(dāng)控件處于凍結(jié)狀態(tài)時(shí),它避免進(jìn)行任何實(shí)際工作,因此避免了任何潛在的線程問(wèn)題。
工作線程更新圖表的過(guò)程應(yīng)與此類(lèi)似。
while (Pesgo1.PeSpecial.Painting)  { // loop till false, doing nothing but waiting, it generally won't take long} 
// once Painting goes false, do something right away 
while (!Pesgo1.Special.Painting) 
{ 
    Pesgo1.Freeze = true; 
    // do your update logic 
    Pesgo1.Freeze = false; 
}
沒(méi)有以上技術(shù),將需要兩個(gè)計(jì)時(shí)器機(jī)制。開(kāi)發(fā)人員應(yīng)該有一個(gè)僅收集數(shù)據(jù)的計(jì)時(shí)器(沒(méi)有ProEssentials調(diào)用或任何會(huì)觸發(fā)WM_PAINT、OnRender等的調(diào)用),以及與圖表在同一線程中的第二個(gè)計(jì)時(shí)器,以使用收集的數(shù)據(jù)更新圖表。
2個(gè)計(jì)時(shí)器的過(guò)程,圖表線程中的計(jì)時(shí)器應(yīng)...
a)告訴工作線程當(dāng)前數(shù)據(jù)正在消耗中,工作線程應(yīng)開(kāi)始在新的輔助塊/對(duì)象中收集數(shù)據(jù),但不要告訴我們(重置新數(shù)據(jù)標(biāo)志,也不要設(shè)置新數(shù)據(jù)數(shù)據(jù)標(biāo)志。)
b)使用工作線程中準(zhǔn)備好的塊處理圖表的數(shù)據(jù)更新邏輯
c)調(diào)用ReinitializeResetImage、UpdateLayout等
d)告訴工作線程,如果有數(shù)據(jù)存在,現(xiàn)在可以設(shè)置新的數(shù)據(jù)標(biāo)志,并且可以選擇釋放第一個(gè)塊的內(nèi)存,或者簡(jiǎn)單地重用固定大小的塊。
e)然后該過(guò)程重復(fù)在收集數(shù)據(jù)的2個(gè)存儲(chǔ)塊之間切換。
這兩種計(jì)時(shí)器方法的優(yōu)點(diǎn)是:1)永遠(yuǎn)不會(huì)強(qiáng)迫cpu循環(huán)并等待,并且2)開(kāi)發(fā)人員可以通過(guò)調(diào)整圖表更新頻率來(lái)更輕松地控制圖表更新邏輯的整體數(shù)據(jù)帶寬能力,而不會(huì)影響數(shù)據(jù)收集頻率。
點(diǎn)擊下載ProEssentials v9.5.0.40最新版
新的數(shù)據(jù)縮減和共享數(shù)據(jù)功能:
新屬性可幫助減少對(duì)存儲(chǔ)數(shù)據(jù)的需求:
枚舉:
	#define PEDD_NONE 0
#define PEDD_POINTINCREMENT 1
#define PEDD_SUBSETINCREMENT 2
#define PEP_nDUPLICATEDATAX
Pesgo, Pe3do, Pepso
.NET: PeData.DuplicateDataX
OCX/VCL: DuplicateDataX
Default = 0 None
#define PEP_nDUPLICATEDATAY
Pesgo, Pe3do, Pepso
.NET: PeData.DuplicateDataY
OCX/VCL: DuplicateDataY
#define PEP_nDUPLICATEDATAZ
Pesgo, Pe3do
.NET: PeData.DuplicateDataZ
OCX/VCL: DuplicateDataZ
這些功能使圖表可以復(fù)制每個(gè)子集的數(shù)據(jù),因此僅需要一個(gè)子集或一個(gè)點(diǎn)的數(shù)據(jù)。最常見(jiàn)的情況可能與Pesgo科學(xué)圖控件有關(guān),在該控件中,每個(gè)數(shù)據(jù)點(diǎn)都傳遞XData和YData。設(shè)置DuplicateDataX = PointIncrement將意味著XData中包含的每個(gè)數(shù)據(jù)元素都將為后續(xù)子集的每個(gè)點(diǎn)使用/復(fù)制。另一種常見(jiàn)情況是3D表面或2D輪廓,其中每個(gè)數(shù)據(jù)點(diǎn)都傳遞XData、YData和ZData。同樣,可以設(shè)置DuplicateDataX = PointIncrement并僅傳遞一個(gè)子集的XData或PEP_nPOINTS數(shù)據(jù)量。您可以設(shè)置DuplicateDataZ = SubsetIncrement,并且只傳遞一個(gè)點(diǎn)的ZData或PEP_nSUBSETS數(shù)據(jù)量。ZData中包含的每個(gè)數(shù)據(jù)元素將用于每個(gè)子集,并且此子集的所有點(diǎn)均設(shè)置為該相同值。這樣可以減少為繪制圖表而存儲(chǔ)的數(shù)據(jù)量。請(qǐng)參見(jiàn)示例和示例項(xiàng)目中的示例122 123(也使用新的XDataPtr)139(新的WaveData示例)401 408。請(qǐng)注意,SubsetByPoints必須為true才能使用這些重復(fù)數(shù)據(jù)功能。
改進(jìn)的屬性可幫助共享數(shù)據(jù):
	#define PEP_faXDATAPTR 
#define PEP_faXDATAIIPTR
#define PEP_faYDATAPTR
#define PEP_faYDATAIIPTR
#define PEP_faZDATAPTR 
#define PEP_faZDATAIIPTR
#define PEP_dwaPOINTCOLORSPTR
.NET、OCX、VCL:類(lèi)似于MFC/DLL項(xiàng)目,調(diào)用PEvsetW傳遞本地分配的內(nèi)存塊的地址。
這些功能與內(nèi)部數(shù)據(jù)縮減過(guò)濾邏輯的改進(jìn)一起添加,以增加可以在應(yīng)用程序內(nèi)渲染的最大數(shù)據(jù)量,并提高渲染此圖像的性能。使用這些功能和上面的DuplicateData功能,一個(gè)32位項(xiàng)目應(yīng)該能夠生成具有更大的最大數(shù)據(jù)大小的圖表,接近1億點(diǎn)。64位項(xiàng)目還將使用更少的內(nèi)存并更快地渲染,并具有更大的實(shí)際最大可圖表數(shù)據(jù)點(diǎn)數(shù)量,可能是十億個(gè)數(shù)據(jù)點(diǎn)(盡管請(qǐng)注意,我們的過(guò)濾邏輯仍然會(huì)發(fā)現(xiàn)并繪制所有異常值,因此在十億之內(nèi)找到這些異常值 點(diǎn)確實(shí)需要時(shí)間。)我們將來(lái)可能會(huì)添加基本的skip-n數(shù)據(jù)點(diǎn)類(lèi)型過(guò)濾,但是如果存在異常值,這種過(guò)濾會(huì)產(chǎn)生誤導(dǎo)性的圖像。
例如,將這些功能用于Pesgo折線圖。請(qǐng)參閱我們的演示和示例項(xiàng)目中的示例123。一個(gè)人會(huì)分配自己的內(nèi)存。SubsetByPoint定義了我們?nèi)绾问褂煤推谕绾伟才艛?shù)據(jù)。因此,對(duì)于XData,可以為每個(gè)數(shù)據(jù)點(diǎn)分配一個(gè)單精度浮點(diǎn)值數(shù)組,以容納x個(gè)數(shù)據(jù),如果只有一個(gè)子集(PEP_nSUBSETS),則大小應(yīng)與PEP_nPOINTS匹配,或者使用DuplicateDataX。如果將有多個(gè)子集并且未使用DuplicateDataX,則數(shù)組的大小應(yīng)為“子集X點(diǎn)”。一個(gè)人通過(guò)PEP_faXDATAPTR屬性調(diào)用PEvsetW告訴ProEssentials您的內(nèi)存緩沖區(qū)的地址??梢允褂妙?lèi)似的過(guò)程來(lái)共享YData。請(qǐng)注意,對(duì)于Pesgo折線圖,通常所有y數(shù)據(jù)值都是唯一的,因此幾乎不需要DuplicateDataY,除非構(gòu)建一個(gè)垂直而非水平運(yùn)行的圖表。可以使用您自己的邏輯/函數(shù)初始化分配的數(shù)組/緩沖區(qū),以根據(jù)需要預(yù)填充它們?;蛘呷匀豢梢哉{(diào)用我們的函數(shù)PEvset,或使用我們的可視界面包裝器(如Pesgo1.PeData.X[s,p])獲取/設(shè)置數(shù)據(jù)。由于數(shù)據(jù)訪問(wèn)可以保持不變,因此開(kāi)發(fā)人員可以通過(guò)簡(jiǎn)單地分配內(nèi)存并設(shè)置上述屬性來(lái)將此功能添加到現(xiàn)有項(xiàng)目中。您還可以使用自己的邏輯更改實(shí)時(shí)方案的數(shù)據(jù)緩沖區(qū)內(nèi)容。請(qǐng)注意,在生成圖像時(shí)不應(yīng)更新緩沖區(qū),因此更改數(shù)據(jù)僅應(yīng)使用與構(gòu)建圖表相同的線程來(lái)完成,或者可能使用上述功能凍結(jié)圖表。完成緩沖區(qū)后,將使用PEP_faXDATAPTR再次調(diào)用PEvsetW,并將地址設(shè)置為零,最后一個(gè)參數(shù)設(shè)置為零。在構(gòu)造自己的內(nèi)存時(shí),您可能負(fù)責(zé)釋放此內(nèi)存。
C++ / MFC:例如:
float* myXData; int myXDataSize; // determine myXDataSize, either equal to (PEP_nPOINTS) property, or (PEP_nSUBSETS X PEP_nPOINTS) // allocate your local memory myXData = new float[myXDataSize]; // tell ProEssentials about your memory, setting last argument to the size of your memory buffer PEvsetW(m_hPE, PEP_faXDATAPTR, myXData, myXDataSize); // when done using your local memory, tell ProEssentials to use it's own copy of memory PEvsetW(m_hPE, PEP_faXDATAPTR, 0, 0); // last 2 arguments must be zero .NET, using Gigasoft.ProEssentials: for example: declaring MainWindow variables to be used throughout project on any form within project. public static float[] myXData; public static int myXDataSize; // determine myXDataSize, either equal to (PeData.Points) property, or (PeData.Subsets X PeData.Points) // allocate your local memory MainWindow.myXData = new float[MainWindow.myXDataSize]; // tell ProEssentials about your memory, setting last argument to the size of your memory buffer Api.PEvsetW(Pesgo1.PeSpecial.HObject, DllProperties.XDataPtr, MainWindow.myXData, MainWindow.myXDataSize); // when done using your local memory, tell ProEssentials to use it's own copy of memory Api.PEvsetW(Pesgo1.PeSpecial.HObject, DllProperties.XDataPtr,0, 0); // last 2 arguments must be zero
當(dāng)繪制大量數(shù)據(jù)時(shí),這些功能以及上述功能將大大減少整個(gè)項(xiàng)目的內(nèi)存開(kāi)銷(xiāo)。數(shù)據(jù)的一份副本將是必要的。避免將數(shù)據(jù)發(fā)送到要復(fù)制和存儲(chǔ)的圖表。
我們的目標(biāo)是通過(guò)支持每個(gè)子集的鋸齒狀數(shù)組和使用緩存的已過(guò)濾塊改進(jìn)過(guò)濾來(lái)繼續(xù)改善數(shù)據(jù)處理,以便僅需一個(gè)慢速創(chuàng)建即可找到所有異常值,并可以快速,完美地呈現(xiàn)隨機(jī)范圍和級(jí)別的進(jìn)一步縮放和平移 。
3D Scientific Graph和2D Graph支持粗線/管子集線型和圖形注釋線型,Direct3D:
當(dāng)移植到9.0的v9.5版本時(shí),將所有Direct3D線型都視為細(xì)線時(shí),這是一個(gè)潛在的問(wèn)題。因此,如果您的代碼(可能)設(shè)置線型,則可能不記得您的代碼是設(shè)置粗線類(lèi)型,而該粗線類(lèi)型只是呈現(xiàn)為細(xì)線。因此,請(qǐng)仔細(xì)檢查使用RenderEngine = Direct3D的Pe3do和Pesgo圖表的屬性SubsetLineTypes。例如,對(duì)于實(shí)時(shí)的Pesgo圖表或包含大量數(shù)據(jù)的圖表(RenderEngine = Direct3D),粗線可能會(huì)通過(guò)幾何著色器進(jìn)行渲染,并且外觀可能會(huì)有所不同,并且速度會(huì)稍慢一些。
	#define PEP_nLINESORTUBES
Pe3do
.NET: Pe3do.PePlot.LinesOrTubes
可能設(shè)置為...
	#define PELOT_ALL_LINES 0
#define PELOT_MEDIUM_THICK_TUBES 1
#define PELOT_MEDIUM_TUBES 2
#define PELOT_MEDIUM_THIN_TUBES 3
#define PELOT_ALL_TUBES 4
此屬性將允許SubsetLineTypes設(shè)置控制2種類(lèi)型的幾何著色器和一個(gè)涉及繪圖線的簡(jiǎn)單線拓?fù)渲?。默認(rèn)情況下,細(xì),中細(xì),中線將繪制為面向屏幕的潛在2d粗線。陰影不會(huì)影響其顏色強(qiáng)度。這些行將更加可見(jiàn)。 MediumThin設(shè)置很好,因?yàn)樗鼘⑼ㄟ^(guò)三角形拓?fù)渑c線拓?fù)淅L制線時(shí)利用抗鋸齒并產(chǎn)生更平滑的線。默認(rèn)情況下,MediumThick、Thick和ExtraThick線將繪制為3D管,并作為場(chǎng)景中的其他3D對(duì)象著色??梢哉{(diào)整此屬性,以便所有線型都使用線幾何著色器(0)或設(shè)置為(4)將使所有線成為管狀。如果您希望細(xì)線實(shí)際淡入背景,則AllTubes設(shè)置非常好。當(dāng)閾值從線到管幾何著色器發(fā)生時(shí),設(shè)置2和3會(huì)更改。通過(guò)設(shè)置此屬性和/或SubsetLineTypes或各種GraphAnnotationTypes來(lái)構(gòu)造線或各種線寬的2d橢圓/矩形,此功能使在場(chǎng)景中強(qiáng)制或混合兩種線技術(shù)變得容易。
與上述屬性相關(guān)的是TubeThicknessMin和TubeThicknessInc。
	#define PEP_fTUBETHICKNESSMIN
Pe3do
.NET: Pe3do.PePlot.Option.TubeThicknessMin
#define PEP_fTUBETHICKNESSINC
Pe3do
.NET: Pe3do.PePlot.Option.TubeThicknessInc
默認(rèn)值為1.0。例如,設(shè)置TubeThicknessMin = 0.5將導(dǎo)致SubsetLineType = ThinLine設(shè)置導(dǎo)致管的默認(rèn)大小減半。這代表了最薄的管。設(shè)置TubeThicknessInc = 1.5將導(dǎo)致增量尺寸增加(MediumThin到Medium到MediumThick)增加50%,并允許控制將要生產(chǎn)的管尺寸范圍。如果要在“中”和“厚”管半徑之間進(jìn)行更大的更改,請(qǐng)?jiān)O(shè)置為1.5或根據(jù)需要設(shè)置。
3D Scientific Graph Direct3D支持GraphAnnotations,以及與Direct3D相關(guān)的新屬性:
當(dāng)前支持的GraphAnnotationTypes是:
......
新的3D ViewingMode功能可提供隨機(jī)3D焦點(diǎn)查看:
	#define PEP_nVIEWINGMODE
Pe3do
PePlot.Option.ViewingMode
Pe3do添加了一個(gè)新屬性ViewingMode。默認(rèn)的PEVM_CENTER是舊版視圖,用戶(hù)可以在其中進(jìn)行與場(chǎng)景中心相關(guān)的旋轉(zhuǎn)(DegreeOfRotation、ViewingHeight)和縮放(DxZoom)。翻譯會(huì)翻譯場(chǎng)景的中心。新功能添加了PEVM_DATA_LOCATION的ViewingMode設(shè)置。在這種新模式下,開(kāi)發(fā)人員可以選擇一個(gè)子集(ViewingSubset),Point(ViewingPoint)作為與旋轉(zhuǎn)和縮放有關(guān)的焦點(diǎn)。如果焦點(diǎn)位置是圖形注釋位置的隨機(jī)數(shù)據(jù)坐標(biāo),則還可以選擇關(guān)注特定的X,Y,Z坐標(biāo)(PEP_structVIEWINGAT)。當(dāng)ViewingMode設(shè)置為DataLocation時(shí),不允許轉(zhuǎn)換,焦點(diǎn)為固定焦點(diǎn)。只需增加ViewingPoint即可產(chǎn)生向下滾動(dòng)數(shù)據(jù)系列的外觀,此功能可用于帶有計(jì)時(shí)器或按鍵的動(dòng)畫(huà)。或者可以生成一系列ViewingAt位置以生成特定的數(shù)據(jù)視圖動(dòng)畫(huà)。
在撰寫(xiě)本文時(shí),DxFitControlShape必須為False。請(qǐng)參閱400 401 402 403 404 408,當(dāng)圖表有演示重點(diǎn)時(shí)按0-9
......
點(diǎn)擊下載ProEssentials v9.5.0.40最新版
9.5中的其他各種改進(jìn)和修復(fù):
	#define PEP_naSUBSETAXES
Pego, Pesgo
PeGrid.SubsetAxes
Default = Empty, when empty this feature is avoided
此功能允許分別和隨機(jī)地為每個(gè)子集設(shè)置軸位置(0-15)。
例如,用以下修改演示示例012。
	Pego1.PeGrid.SubsetAxes(0) = 3
Pego1.PeGrid.SubsetAxes(1) = 2
Pego1.PeGrid.SubsetAxes(2) = 1
Pego1.PeGrid.SubsetAxes(3) = 0
這告訴圖表子集0在軸3上,子集1在軸2上,依此類(lèi)推。顛倒順序,因此第一個(gè)子集在底部,通常第一個(gè)子集在頂部。從歷史上看,必須更改子集的順序才能實(shí)現(xiàn)第一個(gè)子集位于底部。
仍然必須設(shè)置MultiAxesSubsets,盡管從技術(shù)上講,僅需要確保MultiAxesSubsets項(xiàng)內(nèi)分配的總子集等于或匹配Subsets的值。圖表構(gòu)造中有一個(gè)測(cè)試,可以驗(yàn)證MultiAxesSubsets的分配是否使用了所有子集。只要設(shè)置SubsetAxes時(shí),所有軸都將使用,圖表將更改MultiAxesSubset項(xiàng),以供您反映SubsetAxes的狀態(tài)。這樣一來(lái),無(wú)需更改MultiAxesSubsets,即可更改每個(gè)軸的子集數(shù),并且總軸數(shù)保持不變并且每個(gè)軸至少具有1個(gè)子集。將來(lái),我們可能會(huì)擴(kuò)展此邏輯以使SubsetAxes成為總體控制因素,并且它可能會(huì)自動(dòng)調(diào)整MultiAxesSubsets的大小并自動(dòng)建立RandomSubsetsToGraph / SubsetsToShow,因此可以隱藏具有特殊軸名稱(chēng)的子集。該功能是一個(gè)非常新的功能,因此我們需要對(duì)其進(jìn)行進(jìn)一步修改,以使其發(fā)展成為處理多軸的非常簡(jiǎn)單的方法。
	#define PEP_bSHOWANNOTATIONTEXT
Pe3do Pesgo Pego Pepso
.NET: PeAnnotation.ShowAnnotationText
OCX / VCL: ShowAnnotationText
一項(xiàng)新功能,可以輕松隱藏所有注釋文本。設(shè)置為false將快速?gòu)膱?chǎng)景中隱藏注釋文本。注釋圖形將仍然可見(jiàn)。
	#define PEP_nSHOWANNOTATIONTEXTMENU
Pe3do Pesgo Pego Pepso
.NET: PeUserInterface.Menu.ShowAnnotationText
OCX / VCL: ShowAnnotationTextMenu
與上面的ShowAnnotationText相關(guān)。設(shè)置為PEMC_SHOW會(huì)將菜單添加到內(nèi)置彈出菜單中,以允許用戶(hù)切換ShowAnnotationText的狀態(tài)??焖匐[藏或顯示注釋文本。
	#define PEP_fMAXZOOM
Pe3do
.NET PePlot.Option.MaxZoom
OCX / VCL MaxZoom
設(shè)置最大縮放比例,從而防止用戶(hù)將縮放比例縮放到超出焦點(diǎn)的范圍(相機(jī)超過(guò)查看位置)。將greetPrompting設(shè)置為true可以幫助確定場(chǎng)景的最佳值,因?yàn)镚ridAspectX GridAspectZ DxFOV會(huì)影響 DxZoom。
	#define PEP_bSEARCHNONSEQUENTIALDATA
Pesgo
PeData.SearchNonSequentialData
OCX / VCL SearchNonSequentialData
此功能使開(kāi)發(fā)人員能夠在未按順序?qū)數(shù)據(jù)進(jìn)行排序時(shí),使PEsearchsubsetandpointindex和PEsearchpointindex(在下面討論)能夠找到最接近的子集和/或點(diǎn)索引。對(duì)于少于10,000點(diǎn)的圖表,或根據(jù)需要,搜索每個(gè)數(shù)據(jù)點(diǎn)的蠻力搜索可能有用且方便。對(duì)于具有許多數(shù)據(jù)點(diǎn)的圖表,最好將此功能的默認(rèn)值保留為False,如果不是固有排序,則對(duì)x數(shù)據(jù)進(jìn)行排序。
	#define PEP_fLIGHTSTRENGTH
Pe3do
.NET Pe3do1.PePlot.Option.LightStrength
OCX / VCL LightStrength
默認(rèn)值= .3這是環(huán)境照明的級(jí)別或強(qiáng)度。設(shè)置為.4至.8,以全局增亮3D場(chǎng)景。
	#define PEP_bDXGEOMETRYSHADER
Pe3do, Pesgo
PeSpecial.DxGeometryShader
此屬性使開(kāi)發(fā)人員可以禁用與粗線和管有關(guān)的“幾何著色器”。默認(rèn)值為T(mén)rue,但是如果移植到9.5并且您想保證與v9.0或v8.0的向后兼容性,則將此屬性設(shè)置為False將確保新的v9.5粗線支持不會(huì)改變您當(dāng)前的項(xiàng)目外觀或性能。
注意:v9.5必須切換正常位置計(jì)算,以使Pe3do PolyMode = Bar,條形圖如何點(diǎn)亮以更好地匹配Graph Annotations。通常,這會(huì)使當(dāng)前的3D條形圖看起來(lái)太暗,您需要更改亮光位置。
產(chǎn)品介紹 | 下載試用 | |
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@ke049m.cn