################################### ### Svitlana_Kisteniuk_HU4 ### ################################### import rhinoscriptsyntax as rs ### import random, time, sys ### sys.path.append("C:\D\Education\TU Graz\WS_2024\Informatik\DM_lib.py") ### add LW P:/ to rhino's default search path so_that DM2_lib.py can be found ! sys.path.append("C:\D\Education\TU Graz\WS_2024\Informatik\DM_lib.py") ### to find img import DM_lib as dm #reload (dm) rs.ViewDisplayMode(view=None, mode=None) rs.ShowGrid(view=None, show=0) rs.Command("cplane w t enter", 0) # cPlane Top dm.printDisplay(0) #disaktivate screen renovation rs.EnableRedraw(0) dm.eA() rs.Redraw() ###################################### if 1: grayScale = 0 makeEleva = 3 # deep in z makeCurve = 1 intervall = 3 img_path = r"C:\D\Education\TU Graz\WS_2024\Informatik\picture.png" ######## pixels = dm.getPixels(img_path, steps_x=intervall, steps_y=intervall) ######## print "pixels[0]", pixels[0] print "pixel [0]", pixels[0][0] #################################### ### make 3D_grafik from pixels_lists: allCoords = [] for y,row in enumerate(pixels[0:]): ### enumerate = generate counter 0,1,2,3,4,5... coords = [] for x,col in enumerate(row[0:]): dm.esc() avg = int( (col[0] + col[1] + col[2])/3 ) ### average for gray_value if grayScale: col = [avg, avg, avg] cor = [x, y, (255-avg)*0.01*makeEleva] coords.append( cor ) if 1 or not makeCurve: rs.ObjectColor( rs.AddPoint( cor ), col) allCoords.append( coords ) if makeCurve: col = dm.pntCentroid(row) for cor in coords: cor[2] *= makeCurve crv = rs.AddCurve( coords, makeCurve) rs.ObjectColor( crv, col) if y%15==0: #jede 15 rows redraw rs.ZoomExtents() rs.Redraw() if 1: for coords in allCoords: rs.AddCurve( coords, 1) dm.PointRadius(displayModeX=0, rad=3, styl=1)