青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

eryar

PipeCAD - Plant Piping Design Software.
RvmTranslator - Translate AVEVA RVM to OBJ, glTF, etc.
posts - 603, comments - 590, trackbacks - 0, articles - 0

OpenCASCADE Color Scale

Posted on 2014-09-20 20:11 eryar 閱讀(4322) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 2.OpenCASCADE

OpenCASCADE Color Scale

eryar@163.com

Abstract. The color scale is a specialized label object that displays a color map and an accompanying numerical scale for color mapped or contour data plots. As the geometry modeling kernel of SALOME, OpenCASCADE provides the color scale function. The paper focus on the usage of color scale in OpenCASCADE.

Key Words. OpenCASCADE, Color Scale, 應(yīng)力云圖, 顏色映射表

1. Introduction

應(yīng)力云圖是一種應(yīng)用廣泛的標(biāo)量場可視化方法,也經(jīng)常用于表達(dá)矢量場或張量場的一個(gè)分量。云圖在顏色與標(biāo)量數(shù)據(jù)之間建立某種確定的映射關(guān)系,在計(jì)算機(jī)屏幕上繪制一個(gè)顏色離散變化的圖像來顯示科學(xué)計(jì)算結(jié)果。云圖將標(biāo)量場定義域內(nèi)的數(shù)據(jù)值映射成不同的顏色,從而通過顏色變化來反映數(shù)據(jù)場中數(shù)據(jù)的變化規(guī)律。

很多數(shù)值分析軟件后處理的結(jié)果都有繪制云圖的功能。如下圖所示為Abaqus軟件產(chǎn)生的云圖:

wps_clip_image-8337

Figure 1.1 A Colored Stress Patterns by Abaqus

OpenCASCADE作為SALOME開源數(shù)值分析軟件的幾何造型內(nèi)核,也提供了云圖可視化的功能。本文主要介紹如何使用OpenCASCADE來顯示模型的應(yīng)力云圖中的顏色映射表(Color Scale)。

2. Color Scale

云圖繪制依賴于顏色集合與標(biāo)量場數(shù)值集合之間的一一映射,即顏色映射表(Color Scale)。顏色映射表為區(qū)域填充時(shí)建立數(shù)值與顏色的映射關(guān)系。如下圖所示:

wps_clip_image-10285

Figure 2.1 Color Scale

作為分析對(duì)比參照標(biāo)準(zhǔn),用戶可以根據(jù)顏色線性表對(duì)應(yīng)的數(shù)值范圍,來判斷某區(qū)域內(nèi)數(shù)值分布規(guī)律。顏色線性表不僅應(yīng)用于云圖繪制,也應(yīng)用于其他計(jì)算可視化算法中。

顏色線性表可以定義成不同的形式,多以對(duì)比鮮明的色彩作為線性表段顏色,在兩個(gè)對(duì)比色之間采用過渡顏色。

在OpenCASCADE中顏色映射表的繪制是由Viewer來實(shí)現(xiàn)的。其Tcl命令為vcolorscale,如下所示:

wps_clip_image-28256

Figure 2.2 Color Scale Tcl Command: vcolorscale

默認(rèn)的顏色映射表的顯示效果如下圖所示:

wps_clip_image-22753

Figure 2.3 Color Scale in Draw Test Harness

3. Tcl Test

OpenCASCADE基于Tcl/Tk的Draw Test Harness環(huán)境很方便測試一些想法。現(xiàn)在在Draw Test Harness中來顯示一個(gè)完整的云圖,如下圖所示:

wps_clip_image-9599

Figure 3.1 Color Scale in Draw Test Harness

實(shí)現(xiàn)上圖的Tcl腳本代碼如下所示:

#
#    Copyright (c) 2014 eryar All Rights Reserved.
#
#        File    : colorscale.tcl
#        Author  : eryar@163.com
#        Date    : 2014-09-20 18:10
#        Version : 1.0v
#
#    Description : Demonstrate the usage of OpenCASCADE color scale.
#

pload ALL

meshfromstl m data
/stl/head.stl

meshcolors m nodaltex 
0

# show the color sacle.
vcolorscale

vfit

首先加載所需要的所有模塊,再從head.stl中加載網(wǎng)格模型;設(shè)置網(wǎng)格頂點(diǎn)顏色后就用vcolorscale命令打開發(fā)顏色映射表。

4.Code Analysis

根據(jù)Tcl命令找到對(duì)應(yīng)的C++實(shí)現(xiàn)代碼如下所示:

 

//=============================================================================
//function : VColorScale
//purpose  : representation color scale
//=============================================================================
#include <V3d_ColorScale.hxx>

static int VColorScale (Draw_Interpretor& di, Standard_Integer argc, const char ** argv)
{
  
if ( argc != 1 && argc != 4 && argc != 5 && argc != 6 && argc != 8 )
  {
    di 
<< "Usage : " << argv[0<< " [RangeMin = 0 RangeMax = 100 Intervals = 10 HeightFont = 16 Position = Right X = 0 Y = 0]  " << "\n";
    
return 1;
  }

  Handle(AIS_InteractiveContext) aContext 
= ViewerTest::GetAISContext();
  
if(aContext.IsNull()) {
    di 
<< argv[0<< " ERROR : use 'vinit' command before " << "\n";
    
return -1;
  }

  Standard_Real minRange 
= 0. , maxRange = 100. ;

  Standard_Integer numIntervals 
= 10 ;
  Standard_Integer textHeight 
= 16;
  Aspect_TypeOfColorScalePosition position 
= Aspect_TOCSP_RIGHT;
  Standard_Real X 
= 0., Y = 0. ;

  
if ( argc < 9 )
  {
     
if( argc > 3 )
     {
       minRange 
= Draw::Atof( argv[1] );
       maxRange 
= Draw::Atof( argv[2] );
       numIntervals 
= Draw::Atoi( argv[3] );
     }
     
if ( argc > 4 )
       textHeight 
= Draw::Atoi( argv[4] );
     
if ( argc > 5 )
       position 
= (Aspect_TypeOfColorScalePosition)Draw::Atoi( argv[5] );
     
if ( argc > 7 )
     {
       X 
= Draw::Atof( argv[6] );
       Y 
= Draw::Atof( argv[7] );
     }
  }
  Handle(V3d_View) curView 
= ViewerTest::CurrentView( );
  
if ( curView.IsNull( ) )
    
return 1;
  Handle(Aspect_ColorScale) aCSV 
= curView->ColorScale( );
  Handle(V3d_ColorScale) aCS 
= ( Handle( V3d_ColorScale )::DownCast( aCSV ) );
  
if! aCS.IsNull( ) )
  {
    aCS
->SetPosition( X , Y );
    aCS
->SetHeight( 0.95) ;
    aCS
->SetTextHeight( textHeight );
    aCS
->SetRange( minRange , maxRange );
    aCS
->SetNumberOfIntervals( numIntervals );
    aCS
->SetLabelPosition( position );
    
if!curView->ColorScaleIsDisplayed() )
      curView
->ColorScaleDisplay( );
  }
  
return 0;
}

由上述代碼可知,顏色映射表主要是設(shè)置當(dāng)前View中的Aspect_ColorScale。顯示顏色映射表主要是由類V3d_ColorScale實(shí)現(xiàn)。取得當(dāng)前視圖的顏色表對(duì)象后,設(shè)置相關(guān)參數(shù),即可調(diào)用視圖的ColorScaleDisplay()來顯示了。

根據(jù)上述Draw Test Harness中的實(shí)現(xiàn)代碼,可以很容易地在自己的程序中實(shí)現(xiàn)相關(guān)的功能了。

5.Conclusion

OpenCASCADE的視圖也提供了顯示顏色映射表的功能,通過設(shè)置視圖的V3d_ColorScale的相關(guān)參數(shù),即可顯示出顏色映射表了。

 

6. References

1. 王成恩. 面向科學(xué)計(jì)算的網(wǎng)格劃分與可視化技術(shù). 科學(xué)出版社. 2011

 

PDF Version and Tcl Script: OpenCASCADE Color Scale

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            日韩视频一区二区在线观看 | 激情成人综合网| 欧美午夜一区二区福利视频| 免费成人高清| 欧美激情综合在线| 欧美视频中文在线看 | 欧美另类极品videosbest最新版本| 久久久久久69| 欧美另类亚洲| 国产欧美精品久久| 亚洲电影在线| 亚洲视频每日更新| 久久久久88色偷偷免费| 美女网站久久| 一区二区电影免费观看| 香蕉久久一区二区不卡无毒影院| 久久九九免费视频| 欧美日韩和欧美的一区二区| 国产精品一区二区在线观看不卡| 一区二区在线观看视频| 夜久久久久久| 久久婷婷色综合| 99精品视频免费观看视频| 欧美一进一出视频| 欧美激情综合五月色丁香小说| 国产精品免费一区二区三区观看| 国产综合香蕉五月婷在线| 日韩视频在线观看| 久久久久久久久综合| 亚洲美女毛片| 久久亚洲私人国产精品va| 欧美视频一区二区三区| 在线精品国产欧美| 欧美一区二区三区精品电影| 亚洲国产精品一区二区第一页| 一区二区动漫| 欧美大片在线观看一区| 国模私拍视频一区| 亚洲一区二区精品在线| 欧美激情精品久久久久久黑人| 亚洲一区二三| 欧美日韩精品综合| 欧美一区午夜视频在线观看| 欧美在线视频一区二区三区| 欧美凹凸一区二区三区视频| 一本久久综合亚洲鲁鲁| 久久精品国产一区二区三| 欧美激情欧美激情在线五月| 国产精品综合网站| 亚洲图片在区色| 亚洲黄色成人久久久| 久久婷婷人人澡人人喊人人爽 | 亚洲第一中文字幕| 久久精品国产999大香线蕉| 国产精品夜色7777狼人| 亚洲尤物在线视频观看| 日韩天堂av| 欧美日韩国产色综合一二三四| 伊人久久大香线| 久色婷婷小香蕉久久| 久久久久国产精品人| 黄色精品在线看| 久久久久久久综合色一本| 欧美一区影院| 国产一区二区精品久久91| 欧美一级日韩一级| 欧美亚洲日本网站| 国产综合色在线视频区| 久久人人爽爽爽人久久久| 久久成人18免费网站| 国精产品99永久一区一区| 久久综合色天天久久综合图片| 欧美一级艳片视频免费观看| 红桃视频国产一区| 欧美激情一区二区三区成人| 欧美激情第3页| 亚洲色图自拍| 性高湖久久久久久久久| 亚洲国产成人午夜在线一区 | 亚洲国产成人精品女人久久久| 美女免费视频一区| 99精品欧美一区二区三区综合在线 | 国产精品天天看| 久久福利电影| 久久亚洲私人国产精品va| 亚洲全部视频| 亚洲午夜精品网| 在线播放日韩| 日韩亚洲视频| 精品1区2区3区4区| 亚洲精品视频免费观看| 国产女主播在线一区二区| 免费观看在线综合| 欧美性猛交xxxx乱大交退制版| 国产精品白丝av嫩草影院| 午夜精品久久久久影视| 欧美中文在线免费| 亚洲人成网站影音先锋播放| 一区二区三区国产精品| 好看的日韩av电影| 亚洲九九九在线观看| 国产一区二区久久久| 另类亚洲自拍| 国产精品sm| 欧美高清视频一区二区| 国产精品免费在线| 最新日韩中文字幕| 依依成人综合视频| 亚洲在线一区二区三区| 日韩视频在线观看国产| 久久国产乱子精品免费女| 亚洲午夜电影网| 欧美激情免费在线| 美女精品在线| 国内精品久久久久久久影视麻豆| 亚洲免费高清| 亚洲三级国产| 久久综合999| 久久精品亚洲一区二区三区浴池| 欧美日韩dvd在线观看| 欧美sm重口味系列视频在线观看| 国产精品爽爽ⅴa在线观看| 亚洲精品乱码久久久久久日本蜜臀| 狠狠色狠狠色综合人人| 亚洲一区综合| 亚洲自拍高清| 欧美视频一区二区在线观看 | 久久电影一区| 国产乱码精品| 在线视频一区观看| 在线视频一区二区| 欧美精品久久久久久久| 亚洲大胆人体在线| 亚洲国产精品一区| 久久精品三级| 久久综合99re88久久爱| 狠狠爱综合网| 欧美在线观看网站| 久久婷婷av| 亚洲国产高清一区二区三区| 欧美在线观看视频在线| 久久久精品免费视频| 国产视频在线观看一区| 欧美一级理论片| 久久综合免费视频影院| 伊人久久婷婷色综合98网| 久久精品日韩| 亚洲激情视频网| 一区二区三区国产在线| 国产精品黄视频| 午夜精品久久久久久久99樱桃| 欧美尤物巨大精品爽| 国产一区三区三区| 久久久免费观看视频| 欧美黄污视频| 99re8这里有精品热视频免费 | 久久蜜桃精品| 亚洲国产婷婷香蕉久久久久久99| 亚洲日韩欧美视频| 亚洲自拍16p| 黄色成人精品网站| 久久综合网络一区二区| 亚洲国产天堂网精品网站| 一区二区三区高清视频在线观看| 欧美日韩一二三四五区| 午夜精品理论片| 欧美激情中文不卡| 亚洲免费中文字幕| 黄色国产精品| 欧美视频一区二区三区…| 欧美在线观看视频一区二区三区| 亚洲大胆女人| 欧美一区午夜精品| 亚洲人在线视频| 国产午夜精品全部视频播放 | 亚洲视频网站在线观看| 久久九九久精品国产免费直播| 在线日韩欧美视频| 国产精品每日更新| 欧美fxxxxxx另类| 午夜精品999| 99精品国产在热久久| 久久久噜噜噜久久久| 亚洲午夜影视影院在线观看| 国内视频一区| 国产精品久久久久久久午夜片| 久久久久久久一区二区三区| 亚洲伦理在线免费看| 蜜臀a∨国产成人精品 | 欧美一级在线视频| 日韩视频永久免费| 影音先锋亚洲视频| 国产精品一国产精品k频道56| 另类天堂视频在线观看| 亚洲欧美日韩天堂| 99精品视频免费| 亚洲国产精品黑人久久久| 老司机免费视频久久| 欧美一区二区高清| 亚洲免费在线播放|