2014-04-26 3 views
0

아래 함수를 파이썬으로 변환하려고하는데 무슨 일이 일어나고 있는지 잘 모르겠습니다.MATLAB 함수 선언

function [ray]=create_ray(point1,direction) 
ray.direction.x=direction.x; 
ray.coefficients.x=(point1.x); 
ray.direction.y=direction.y; 
ray.coefficients.y=(point1.y); 
ray.direction.z=direction.z; 
ray.coefficients.z=(point1.z); 

나는 그것이 광선을 배열로 반환한다는 것을 알고 있지만 방향과 계수로 정확히 무엇을하고 있습니까? 누군가 나에게 무슨 일이 일어나는지 설명해 주시겠습니까? 어떤 도움이라도 대단히 감사하겠습니다.

답변

3

ray이 반환 값입니다. ray는 MATLAB 코드에 function [레이]=create_ray(point1,direction)입니다 파이썬 버전은

def create_ray(point1, direction): 
     ... 
     return ray 

될 것입니다.

알아두기 : ray은 파이썬에서 class으로 정의됩니다. 따라서 최종 코드는

class Direction(object): 
    x, y, z = None, None, None 

class Coefficients(object): 
    x, y, z = None, None, None 

class Ray(object): 
    direction = Direction() 
    coefficients = Coefficients() 

def create_ray(point1, direction): 
    ray = Ray() 
    ray.direction.x = direction.x; 
    ray.coefficients.x = point1.x; 
    ray.direction.y = direction.y; 
    ray.coefficients.y = point1.y; 
    ray.direction.z = direction.z; 
    ray.coefficients.z = point1.z; 
    return ray 
+0

일 수 있습니다. 방향과 계수는 어떨까요? 이것은 구조 배열입니까? – user2659117

+0

코드에서 추측하지 않습니다. 더 많은 코드를 제공하십시오. – emeth

+0

그게 전부입니다. 나는 내가 제공 한 기능에서 무슨 일이 일어나고 있는지 이해하려고 노력하고 있었다. 나는 MATLAB에 너무 익숙하지 않기 때문에, 무슨 일이 일어나고 있는지에 대해 약간 혼란스러워했다. 귀하의 설명은 실제로 도움이되었습니다. – user2659117