CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
GiRayTraceProc.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2024, Open Design Alliance (the "Alliance").
3// All rights reserved.
4//
5// This software and its documentation and related materials are owned by
6// the Alliance. The software may only be incorporated into application
7// programs owned by members of the Alliance, subject to a signed
8// Membership Agreement and Supplemental Software License Agreement with the
9// Alliance. The structure and organization of this software are the valuable
10// trade secrets of the Alliance and its suppliers. The software is also
11// protected by copyright law and international treaty provisions. Application
12// programs incorporating this software must include the following statement
13// with their copyright notices:
14//
15// This application incorporates Open Design Alliance software pursuant to a license
16// agreement with Open Design Alliance.
17// Open Design Alliance Copyright (C) 2002-2024 by Open Design Alliance.
18// All rights reserved.
19//
20// By use of this software, its documentation or related materials, you
21// acknowledge and accept the above terms.
23
24#ifndef __ODGIRAYTRACEPROC__
25#define __ODGIRAYTRACEPROC__
26
27#include "Gi/GiSelectProcBase.h"
28
29class OdGiPathNode;
31
32#include "TD_PackPush.h"
33
44{
45public:
46 //DOM-IGNORE-BEGIN
48 //DOM-IGNORE-END
49
53 enum class RayTracingMode
54 {
55 kStandardMode = 0, // Standard (unordered) ray tracing.
56 kSortedMode = 1 // Sorted ray tracing.
57 };
58
67 virtual void set(const OdGePoint3d &rayOrigin, const OdGeVector3d &rayDirection,
68 RayTracingMode mode, OdGsRayTraceReactor* pReactor) = 0;
69
76 virtual void get(OdGePoint3d &rayOrigin, OdGeVector3d &rayDirection) const = 0;
77
84 virtual void setFilter(OdGiPathNode const* const* pObjectList = NULL, OdUInt32 nObjectListSize = 0) = 0;
85};
86
92
93#include "TD_PackPop.h"
94
95#endif //#ifndef __ODGIRAYTRACEPROC__
#define ODGI_EXPORT
Definition GiExport.h:35
OdSmartPtr< OdGiRayTraceProc > OdGiRayTraceProcPtr
unsigned int OdUInt32
virtual void set(const OdGePoint3d &rayOrigin, const OdGeVector3d &rayDirection, RayTracingMode mode, OdGsRayTraceReactor *pReactor)=0
virtual void get(OdGePoint3d &rayOrigin, OdGeVector3d &rayDirection) const =0
ODRX_DECLARE_MEMBERS(OdGiRayTraceProc)
virtual void setFilter(OdGiPathNode const *const *pObjectList=NULL, OdUInt32 nObjectListSize=0)=0