Osgeo 3d

From DreamsteepWiki

Jump to: navigation, search

Same as below with blender taken out


import gdal
from gdalconst import *
from gdalnumeric import *
#import Numeric

def gdalconv(filename):
	filer = "'"+filename + "'"
	print filer
	gk = gdal.Open(filename, GA_ReadOnly)
	array = gk.ReadAsArray()
	width = array.shape[1]
	ht = array.shape[0]
	#array in [row, column]
	#me = NMesh.GetRaw()
	df = array

	for i in range (0,ht):
		for j in range (0,width):
			elev = df[i,j]*.01
			#3 arc seconds = 90 meters on side
			#v = NMesh.Vert(j*.9,(ht-i)*.9,elev)
			#me.verts.append(v)

	for u in range (0,ht - 1):
		for w in range (0,width - 1):
                        print w   
			#f= NMesh.Face()
			#f.v.append (me.verts[u*width+w])
			#f.v.append (me.verts[u*width+w+1])
			#f.v.append (me.verts[(u+1)*width+w+1])
			#f.v.append (me.verts[(u+1)*width+w])
			#f.smooth = 1
			#me.faces.append(f)

	#NMesh.PutRaw(me, "raster", 1)
	#Blender.Redraw()

def fs_callback(filename):
	gdalconv(filename)

#Blender.Window.FileSelector(fs_callback,"Raster Import")


gdalconv('/home/keith/fgs/apps/metro_apps/data/JCJpgs/019034_UTM_Feet.jpg')
#gk = gdal.Open('/home/keith/fgs/apps/metro_apps/data/JCJpgs/019034_UTM_Feet.jpg', GA_ReadOnly)



#taken from 
#http://blenderartists.org/forum/showthread?t=37133

import Blender
from Blender import *
import gdal
from gdalconst import *
from gdalnumeric import *
import Numeric

def gdalconv(filename):
	filer = "'"+filename + "'"
	print filer
	gk = gdal.Open(filename, GA_ReadOnly)
	array = gk.ReadAsArray()
	width = array.shape[1]
	ht = array.shape[0]
	#array in [row, column]
	me = NMesh.GetRaw()
	df = array

	for i in range (0,ht):
		for j in range (0,width):
			elev = df[i,j]*.01
			#3 arc seconds = 90 meters on side
			v = NMesh.Vert(j*.9,(ht-i)*.9,elev)
			me.verts.append(v)

	for u in range (0,ht - 1):
		for w in range (0,width - 1):
			f= NMesh.Face()
			f.v.append (me.verts[u*width+w])
			f.v.append (me.verts[u*width+w+1])
			f.v.append (me.verts[(u+1)*width+w+1])
			f.v.append (me.verts[(u+1)*width+w])
			f.smooth = 1
			me.faces.append(f)

	NMesh.PutRaw(me, "raster", 1)
	Blender.Redraw()

def fs_callback(filename):
	gdalconv(filename)

Blender.Window.FileSelector(fs_callback,"Raster Import")

Personal tools