def createBBoxCamera(bbox,fov=35.0):
    atPt= bbox.center()
    d= bbox.xmax()-bbox.xmin()
    diagSqr= d*d
    d= bbox.ymax()-bbox.ymin()
    diagSqr += d*d
    d= bbox.zmax()-bbox.zmin()
    diagSqr += d*d
    diag= math.sqrt(diagSqr)
    fromPt= (atPt[0],atPt[1],atPt[2]+3*diag)
    mycam= starsplatter.Camera(fromPt,atPt,(0.0,1.0,0.0),
                               fov, -0.1*diag, -5*diag)
    return mycam
def createBBoxCamera(bbox, fov=35.0, sepfac=1.0):
    atPt = bbox.center()
    d = bbox.xmax() - bbox.xmin()
    diagSqr = d * d
    d = bbox.ymax() - bbox.ymin()
    diagSqr += d * d
    d = bbox.zmax() - bbox.zmin()
    diagSqr += d * d
    diag = math.sqrt(diagSqr)
    fromPt = (atPt[0] + 0.5 * sepfac * diag, atPt[1] + 0.5 * sepfac * diag,
              atPt[2] + 3 * sepfac * diag)
    thiscam = starsplatter.Camera(fromPt, atPt, (0.0, 1.0, 0.0), fov,
                                  -1 * sepfac * diag, -5 * sepfac * diag)
    return thiscam
Esempio n. 3
0
 def updateCamFromControls(self):
     (atX, atY, atZ, atW) = self.camera.atpt()
     (fmX, fmY, fmZ, fmW) = self.camera.frompt()
     atX /= atW
     atY /= atW
     atZ /= atW
     atW = 1.0
     dX = atX - (fmX / fmW)
     dY = atY - (fmY / fmW)
     dZ = atZ - (fmZ / fmW)
     sep = math.sqrt((dX * dX) + (dY * dY) + (dZ * dZ))
     newSep = self.dollySlider.getValue()
     newDX = dX * (newSep / sep)
     newDY = dY * (newSep / sep)
     newDZ = dZ * (newSep / sep)
     self.camera = starsplatter.Camera(
         (atX + newDX, atY + newDY, atZ + newDZ, atW), (atX, atY, atZ, atW),
         self.camera.updir(), self.camera.fov(),
         -self.hitherSlider.getValue(), -self.yonSlider.getValue())
import sys
import os
import starsplatter

def mkBunch( dx ):
    gp= starsplatter.StarBunch()
    gp.set_nstars(4)
    gp.set_coords(0,(0.0+dx,0.0,0.0))
    gp.set_coords(1,(5.0+dx,0.0,0.0))
    gp.set_coords(2,(0.0+dx,5.0,0.0))
    gp.set_coords(3,(0.0+dx,0.0,5.0))
    gp.set_bunch_color((0.1*dx,1.0-0.1*dx,1.0,1.0))
    return gp

mycam= starsplatter.Camera((0.0,0.0,30.0),
                           (0.0,0.0,0.0),
                           (0.0,1.0,0.0),
                           35.0,-20.0,-40.0)

myren= starsplatter.StarSplatter()
myren2= starsplatter.StarSplatter()
for i in range(0,5):
    sb= mkBunch(0.5*i)
    #sbList.append(sb)
    sb.set_density(0.03)
    sb.set_scale_length(0.1)
    print("%d..."%i, end=' ')
    myren.add_stars(sb)
    if i%2 == 0: myren2.add_stars(sb)
    print("set.")

myren.set_exposure_type( starsplatter.StarSplatter.ET_LOG_HSV_AUTO )
Esempio n. 5
0
#! /usr/bin/env python
import sys
import os
import starsplatter

mycam= starsplatter.Camera((0.0,0.0,3.0),
                           (0.0,0.0,0.0),
                           (0.0,1.0,0.0),
                           30.0,-1.0,-5.0)
gas= starsplatter.StarBunch()
stars= starsplatter.StarBunch()
dark= starsplatter.StarBunch()

myren= starsplatter.StarSplatter()
infile= open("../data/test.tipsy","r")
starsplatter.load_tipsy_box_ascii(infile,gas,stars,dark)
infile.close()

gas.set_bunch_color((1.0,0.0,0.0,1.0))
gas.set_density(1.0)
gas.set_scale_length(0.1)
stars.set_bunch_color((0.0,1.0,0.0,1.0))
stars.set_density(1.0)
stars.set_scale_length(0.1)
dark.set_bunch_color((0.0,0.0,1.0,1.0))
dark.set_density(0.1)
dark.set_scale_length(0.1)
gas.dump(sys.stderr)
myren.set_image_dims(640,480)
myren.set_camera(mycam)
myren.set_debug(True)
Esempio n. 6
0
def createDefaultCamera():
    mycam = starsplatter.Camera((-5.0, -9.0, 3.0), (0.0, 0.0, 0.0),
                                (0.0, 0.0, 1.0), 35.0, -1.0, -50.0)
    return mycam
Esempio n. 7
0
#! /usr/bin/env python
import sys
import os
import starsplatter

filename = sys.argv[1]

mycam = starsplatter.Camera((-5.0, -9.0, 3.0), (0.0, 0.0, 0.0),
                            (0.0, 0.0, 1.0), 35.0, -1.0, -50.0)
# I think disk1 and bulge1 are Milky Way, disk2 and bulge2 are Andromeda
disk1 = starsplatter.StarBunch()
disk2 = starsplatter.StarBunch()
bulge1 = starsplatter.StarBunch()
bulge2 = starsplatter.StarBunch()

infile = open(filename, "r")
outList = starsplatter.load_dubinski(infile, [disk1, disk2, bulge1, bulge2])
infile.close()

myren = starsplatter.StarSplatter()
myren.set_image_dims(640, 480)
myren.set_camera(mycam)
myren.set_exposure_type(starsplatter.StarSplatter.ET_LOG_AUTO)
myren.set_exposure_scale(0.5)
myren.set_debug(1)

disk1.set_bunch_color((0.8, 0.5, 1.0, 1.0))
disk1.set_density(0.00002)
disk1.set_exp_constant(1000.0)
disk1.dump(sys.stderr)