• Advertisement

Archived

This topic is now archived and is closed to further replies.

PushMatrix class

This topic is 5376 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Simple class I thought I'd share with the world, it is not a new concept but maybe some newbie never thought of it.
	class PushMatrix
	{
	public:
		PushMatrix() : m_bPopped(false)
		{
			glPushMatrix();
		}

		~PushMatrix()
		{
			PopMatrix();
		}

		void PopMatrix()
		{
			if(!m_bPopped)
			{
				glPopMatrix();
				m_bPopped = true;
			}
		}
	private:
		bool m_bPopped;  // if true matrix has already been popped

	};
[edited by - duke on August 7, 2003 8:47:35 AM] [edited by - duke on August 7, 2003 8:48:14 AM]

Share this post


Link to post
Share on other sites
Advertisement
Oh and the usage for those it isn''t clear to.

void draw()
{
PushMatrix pm;

// issue gl commands
}

matrix is automatically popped whenever the function returns at any point. You can do the same for pushattrib too

Share this post


Link to post
Share on other sites

  • Advertisement