note
	description: "A 3d object."
	author: "Louis Marchand"
	date: "Thu, 02 Apr 2015 04:11:03 +0000"
	revision: "2.0"

deferred class 
	GAME_3D_OBJECT

feature -- Access

	set_position (a_x, a_y, a_z: REAL_32)
			-- Set the object position in a 3D environment.
		deferred
		ensure
			is_assign: attached position as la_position implies (la_position.x ~ a_x and la_position.y ~ a_y and la_position.z ~ a_z)
		end

	position: TUPLE [x: REAL_32; y: REAL_32; z: REAL_32]
			-- Object position in a 3D environment.
		deferred
		end

	x: REAL_32 assign set_x
			-- X coordinate of the position
		do
			Result := position.x
		end

	set_x (a_x: REAL_32)
			-- Assign the x coordinate of the position
		do
			set_position (a_x, y, z)
		ensure
			is_assign: x ~ a_x
		end

	y: REAL_32 assign set_y
			-- Y coordinate of the position
		do
			Result := position.y
		end

	set_y (a_y: REAL_32)
			-- Assign the y coordinate of the position
		do
			set_position (x, a_y, z)
		ensure
			is_assign: y ~ a_y
		end

	z: REAL_32 assign set_z
			-- Z coordinate of the position
		do
			Result := position.z
		end

	set_z (a_z: REAL_32)
			-- Assign the z coordinate of the position
		do
			set_position (x, y, a_z)
		ensure
			is_assign: z ~ a_z
		end
	
end -- class GAME_3D_OBJECT

Generated by ISE EiffelStudio