yyliusb 发表于 2004-10-28 16:58:06

从surfer把数据倒入FLAC3D!

不知道各位在做象边坡地形表面这种不规则面的模型时有没有什么好招。我最近发现了一种方法。在FLAC3D的fish函数库中有一个叫TOPO的函数,可以生成自由表面模型的网格,关键是它要用到的那个数据表做起来非常麻烦,具体就是在地形图上平行y轴画一系列的等距的直线,然后读出每条与每条直线相交的等高线的x值和高程,然后生成一张表,格式是table y x z。用surfer可以很方便的生成这张表,在DATA菜单下的convert...可以将GRD文件生成以上要求的那种格式。

ZDJ38 发表于 2004-10-30 11:40:40

Re:从surfer把数据倒入FLAC3D!

具体是怎么操作的啊!能详细介绍一下吗?

dynamax 发表于 2004-10-28 18:18:57

Re:从surfer把数据倒入FLAC3D!

给个例子看看吧

yyliusb 发表于 2004-10-29 11:05:31

Re:从surfer把数据倒入FLAC3D!

table 1 0 90.718355016238
table 1 9 79.111641051953
table 1 18 65.475325081547
table 1 27 52.908061463791
table 1 36 46.487678855204
table 1 45 59.971771137285
table 1 54 55.218308715348
table 1 63 42.026816947203
table 1 72 53.44646606691
table 1 81 41.111505839701
table 1 90 24.999996660797
table 2 0 94.048135049747
table 2 9 82.001649618656
table 2 18 66.810616851692
table 2 27 53.404047771326
table 2 36 51.778139122385
table 2 45 62.636063432506
table 2 54 57.224285750791
table 2 63 51.459865276833
table 2 72 59.10490716711
table 2 81 47.433160239061
table 2 90 33.979436230659
table 3 0 98.71846703013
table 3 9 85.069176045703
table 3 18 68.629917728962
table 3 27 55.490496313605
table 3 36 57.059481718363
table 3 45 67.610291860121
table 3 54 59.775403851206
table 3 63 56.389769263691
table 3 72 63.188515504607
table 3 81 54.05656392157
table 3 90 40.949993493494
table 4 0 104.99997963025
table 4 9 86.691884602939
table 4 18 69.891958163762
table 4 27 56.743623734742
table 4 36 63.353507434723
table 4 45 73.634976363326
table 4 54 63.116051138663
table 4 63 60.657256128938
table 4 72 71.478951193473
table 4 81 60.587474634781
table 4 90 45.756603033956
table 5 0 98.195858367034
table 5 9 84.831586101513
table 5 18 69.002417401451
table 5 27 59.409684541226
table 5 36 69.728861910381
table 5 45 81.86600380534
table 5 54 68.044318884697
table 5 63 67.285967914755
table 5 72 80.265195275792
table 5 81 66.744013844558
table 5 90 47.951755766957
table 6 0 93.107143451924
table 6 9 81.939633984091
table 6 18 68.160039842916
table 6 27 61.478788949678
table 6 36 74.35776423061
table 6 45 92.033910569493
table 6 54 72.696564211998
table 6 63 71.463390120094
table 6 72 88.105544187111
table 6 81 72.522748497433
table 6 90 53.066722484377
table 7 0 89.243429081313
table 7 9 79.861159936171
table 7 18 68.923530565475
table 7 27 65.50561340881
table 7 36 73.750061043899
table 7 45 79.999988881443
table 7 54 71.504241582583
table 7 63 71.202853677915
table 7 72 88.79210785516
table 7 81 76.9485560418
table 7 90 56.685530859926
table 8 0 84.259351591035
table 8 9 78.168256133458
table 8 18 71.907313653323
table 8 27 69.591762812499
table 8 36 71.224221606633
table 8 45 72.241007277537
table 8 54 74.357099522335
table 8 63 74.864955057864
table 8 72 100.4382754548
table 8 81 79.639701573956
table 8 90 55.59298252669
table 9 0 78.938261962308
table 9 9 74.183893284808
table 9 18 74.399851682828
table 9 27 73.199719451143
table 9 36 69.271569365389
table 9 45 66.36203449307
table 9 54 77.764228584193
table 9 63 90.692817669979
table 9 72 98.506249357009
table 9 81 77.657832327619
table 9 90 55.972759934328
table 10 0 73.507487632421
table 10 9 65.991005687871
table 10 18 66.552496856772
table 10 27 73.57325583685
table 10 36 66.930555141184
table 10 45 58.865528244679
table 10 54 71.220391847255
table 10 63 84.59099631039
table 10 72 85.611466903448
table 10 81 70.356575100689
table 10 90 52.324090805914
table 11 0 69.999987888671
table 11 9 57.849147128978
table 11 18 59.296932772179
table 11 27 72.485583715016
table 11 36 63.986323176885
table 11 45 50.000027158777
table 11 54 63.406733553962
table 11 63 73.780144273187
table 11 72 73.203832552658
table 11 81 61.787999257203
table 11 90 44.99999974841
def topo
loop i (1,n_zon_col)
loop j(1,n_zon_row)
   x1=xor+dx_size*(i-1)
   x2=x1+dx_size
   y1=yor+dy_size*(j-1)
   y2=y1+dy_size
   z1=table(j,x1)
   z2=table(j+1,x1)
   z3=table(j+1,x2)
   z4=table(j,x2)
   zb=z_base
   zs=z_size
   command
       gen zon brick p0 x1 y1 zb p1 x2 y1 zb p2 x1 y2 zb p3 x1 y1 z1 &
                     p4 x2 y2 zb p5 x1 y2 z2 p6 x2 y1 z4 p7 x2 y2 z3 &
                     size 1 1 zs
   end_command
   end_loop
end_loop
end
set n_zon_col=10 n_zon_row=10 z_base=0 z_size=5 dx_size=10 dy_size=10
set xor=0 yor=0
topo

config gpextra 1
def contour_map
pnt=gp_head
loop while pnt # null
    gp_extra(pnt,1)=zpos(pnt)
    pnt=gp_next(pnt)
   end_loop
end
contour_map

plot create map
plot set rot 90 0 0
plot set pers off
plot add con gpextra 1 out onint 25 alias 'Z elevation'
plot show

yyliusb 发表于 2004-10-29 11:15:40

Re:从surfer把数据倒入FLAC3D!

后面一部分代码手册中有,前一部分数据表用surfer+excel生成,很快!如果要用手册中介绍的那种方法来生成table,那工作量就不知要大多少倍了。

cjiao2000 发表于 2004-10-30 19:14:04

Re:从surfer把数据倒入FLAC3D!

不错,是一个思路,是一个突破,顶!!!

hanfengleng 发表于 2004-10-30 20:14:53

Re:从surfer把数据倒入FLAC3D!

这个例子虽然好,但是好像使用性不强,因为风化层一般有好几带,即使可以建出模型,但是材料属性的赋予也不是容易的事啊!

xuguo1998 发表于 2004-10-31 08:35:22

Re:从surfer把数据倒入FLAC3D!

这是一个好方法,顶!

langzijcy 发表于 2004-11-3 16:27:13

Re:从surfer把数据倒入FLAC3D!

是个好办法,能不能告诉以下具体怎么做。
langzijcy@163.com
希望能和我联系一下

baby20023402 发表于 2007-12-28 01:39:50

"前一部分数据表用surfer+excel生成",具体是怎么做的哟?

dove169 发表于 2008-5-28 13:53:39

回复 1# 的帖子

学习了,谢谢

55709673 发表于 2008-8-4 08:35:02

请问楼主,您的程序我没看懂, z1=table(j,x1)中的x1是table中的哪个数据啊,table1中有11个数据我不知道怎么跟这个命令联系起来,请指点

hnlglyx 发表于 2008-8-7 22:28:30

好好研究一下!

hnlglyx 发表于 2008-8-7 22:29:17

好好研究一下!

hfwangpc 发表于 2008-8-16 18:39:40

还是没有明白“前一部分数据表用surfer+excel生成”,surf导出来的数据不是有三列吗?

abot866 发表于 2009-6-3 03:20:52

用LIst加Txt处理就可以得到数据,比较容易

yangshikou 发表于 2009-6-7 10:43:03

谢谢分享 !

hgzyyl 发表于 2010-6-7 07:56:40

具体是怎么操作的啊!能详细介绍一下吗?

欲海猛男 发表于 2010-6-7 13:46:31

我也想知道,好像很麻烦

wanghongbing 发表于 2011-10-9 13:22:05

希望楼主能详细介绍下 很多人期待啊!
页: [1] 2
查看完整版本: 从surfer把数据倒入FLAC3D!