mirror of
https://github.com/mcneel/opennurbs.git
synced 2026-03-16 22:36:01 +08:00
Co-authored-by: Alain <alain@mcneel.com> Co-authored-by: Andrew Le Bihan <andy@mcneel.com> Co-authored-by: croudyj <croudyj@gmail.com> Co-authored-by: Dale Fugier <dale@mcneel.com> Co-authored-by: Dale Lear <dalelear@mcneel.com> Co-authored-by: David Eränen <david.eranen@mcneel.com> Co-authored-by: Greg Arden <greg@mcneel.com> Co-authored-by: Mikko Oksanen <mikko@mcneel.com> Co-authored-by: piac <giulio@mcneel.com> Co-authored-by: Steve Baer <steve@mcneel.com> Co-authored-by: TimHemmelman <tim@mcneel.com> Co-authored-by: Will Pearson <will@mcneel.com>
60 lines
1.7 KiB
C++
60 lines
1.7 KiB
C++
//
|
|
// Copyright (c) 1993-2022 Robert McNeel & Associates. All rights reserved.
|
|
// OpenNURBS, Rhinoceros, and Rhino3D are registered trademarks of Robert
|
|
// McNeel & Associates.
|
|
//
|
|
// THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY.
|
|
// ALL IMPLIED WARRANTIES OF FITNESS FOR ANY PARTICULAR PURPOSE AND OF
|
|
// MERCHANTABILITY ARE HEREBY DISCLAIMED.
|
|
//
|
|
// For complete openNURBS copyright information see <http://www.opennurbs.org>.
|
|
//
|
|
////////////////////////////////////////////////////////////////
|
|
|
|
#if !defined(ON_DITHERING_INC_)
|
|
#define ON_DITHERING_INC_
|
|
|
|
class ON_CLASS ON_Dithering
|
|
{
|
|
public:
|
|
ON_Dithering();
|
|
ON_Dithering(ON_XMLNode& model_node);
|
|
ON_Dithering(const ON_Dithering& dit);
|
|
virtual ~ON_Dithering();
|
|
|
|
virtual const ON_Dithering& operator = (const ON_Dithering& dit);
|
|
|
|
virtual bool operator == (const ON_Dithering& dit) const;
|
|
virtual bool operator != (const ON_Dithering& dit) const;
|
|
|
|
// Get dithering on / off state.
|
|
virtual bool On(void) const;
|
|
|
|
// Set dithering on or off.
|
|
virtual void SetOn(bool b);
|
|
|
|
enum class Methods { SimpleNoise, FloydSteinberg };
|
|
|
|
// Get the dithering method.
|
|
virtual Methods Method(void) const;
|
|
|
|
// Set the dithering method.
|
|
virtual void SetMethod(Methods m);
|
|
|
|
// Returns the CRC of the dithering state.
|
|
virtual ON__UINT32 DataCRC(ON__UINT32 current_remainder) const;
|
|
|
|
// Emergency virtual function for future expansion.
|
|
virtual void* EVF(const wchar_t* func, void* data);
|
|
|
|
private: // For internal use only.
|
|
friend class ON_3dmRenderSettingsPrivate;
|
|
virtual void InvalidateCache(void);
|
|
|
|
private:
|
|
class CImpl;
|
|
CImpl* m_impl;
|
|
};
|
|
|
|
#endif
|