当前位置: 首页>>代码示例>>Python>>正文


Python Helper.normalize方法代码示例

本文整理汇总了Python中Helper.normalize方法的典型用法代码示例。如果您正苦于以下问题:Python Helper.normalize方法的具体用法?Python Helper.normalize怎么用?Python Helper.normalize使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Helper的用法示例。


在下文中一共展示了Helper.normalize方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: colorAt

# 需要导入模块: import Helper [as 别名]
# 或者: from Helper import normalize [as 别名]
 def colorAt(self, ray, t, objectlist):
     sp = ray.pointAtParameter(t)                                # Schnittpunkt am Objekt
     d = ray.direction
     n = self.normalAt(sp)
     Ca = np.array(self.color)
     c_out = 0         
     for light_source in helper.light_sources: 
         light = helper.normalize(sp - light_source)                                 # Vektor vom Licht zum Schnittpunkt  
         lr = light - 2 * np.dot(n, light) * n        
         lightV = helper.normalize(light_source - sp)
         c_ambient = Ca * helper.ka
         c_diffus = helper.Cin * helper.kd * np.dot(lightV, n)
         c_spec = helper.Cin * helper.ks * math.pow(np.dot(lr, d), 32)
         c_tmp = c_ambient + c_diffus + c_spec
         
         newRay = Ray(sp, light_source - sp)
         
         for o in objectlist:
             if o is self:
                 pass
             else:
                 x = o.intersectionParameter(newRay)
                 if x and x > 0:
                     c_tmp *= 0.5
                     break
         c_out += c_tmp
     return c_out
开发者ID:sandritter,项目名称:RayTracer,代码行数:29,代码来源:Triangle.py

示例2: computeReflectedRay

# 需要导入模块: import Helper [as 别名]
# 或者: from Helper import normalize [as 别名]
 def computeReflectedRay(self, hitPointData):
     ray = hitPointData[1]
     o = hitPointData[0]
     sp = ray.pointAtParameter(hitPointData[2])
     light = helper.normalize(sp - ray.direction)
     n = o.normalAt(sp)
     lr = light - 2 * np.dot(n, light) * n
     return Ray(sp, lr)
开发者ID:sandritter,项目名称:RayTracer,代码行数:10,代码来源:Raytracer.py

示例3: colorAt

# 需要导入模块: import Helper [as 别名]
# 或者: from Helper import normalize [as 别名]
 def colorAt(self, ray, t, objectlist):
     sp = ray.pointAtParameter(t)                            # Schnittpunkt am Objekt
     d = ray.direction
     c_out = 0
     for light_source in helper.light_sources:                            
         light = helper.normalize(sp - light_source)                             # Vektor vom Licht zum Schnittpunkt 
         n = self.normalAt(sp)                                   # Normale des Objekts am Schnittpunkt sp
         lr = light - 2 * np.dot(n, light) * n                   # Ausfallwinkel
         Ca = np.array(self.color)   
         c_ambient = Ca * helper.ka
         c_diffus = helper.Cin * helper.kd * np.dot(light, n)
         c_spec = helper.Cin * helper.ks * math.pow(np.dot(lr, -1 * d), 32)
         c_tmp = c_ambient + c_diffus + c_spec
     
         newRay = Ray(sp, light_source - sp)
     
         for o in objectlist:
             x = o.intersectionParameter(newRay)
             if x:
                 c_tmp *= 0.5
                 break
         c_out += c_tmp
     return c_out
开发者ID:sandritter,项目名称:RayTracer,代码行数:25,代码来源:Sphere.py


注:本文中的Helper.normalize方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。