<commit_before>/*=========================================================================

  Program:   Visualization Library
  Module:    Cone.hh
  Language:  C++
  Date:      $Date$
  Version:   $Revision$

This file is part of the Visualization Library. No part of this file
or its contents may be copied, reproduced or altered in any way
without the express written consent of the authors.

Copyright (c) <NAME>, <NAME>, <NAME> 1993, 1994 

=========================================================================*/
// .NAME vlCone - implicit function for a cone
// .SECTION Description
// vlCone computes the implicit function and function gradient for a cone.
// vlCone is a concrete implementation of vlImplicitFunction. The cone is
// centered at the origin with axis of rotation coincident with z-axis.

#ifndef __vlCone_h
#define __vlCone_h

#include "ImpFunc.hh"

class vlCone : public vlImplicitFunction
{
public:
  vlCone();
  char *GetClassName() {return "vlCone";};
  void PrintSelf(ostream& os, vlIndent indent);

  // ImplicitFunction interface
  float EvaluateFunction(float x[3]);
  void EvaluateGradient(float x[3], float g[3]);

  // Description:
  // Set/Get height of cone.
  vlSetMacro(Height,float);
  vlGetMacro(Height,float);

  // Description:
  // Set/Get the radius of the cone's base.
  vlSetMacro(BaseRadius,float);
  vlGetMacro(BaseRadius,float);

protected:
  float Height;
  float BaseRadius;

};

#endif

<commit_msg>ENH: Final definition...<commit_after>/*=========================================================================

  Program:   Visualization Library
  Module:    Cone.hh
  Language:  C++
  Date:      $Date$
  Version:   $Revision$

This file is part of the Visualization Library. No part of this file
or its contents may be copied, reproduced or altered in any way
without the express written consent of the authors.

Copyright (c) <NAME>, <NAME>, <NAME> 1993, 1994 

=========================================================================*/
// .NAME vlCone - implicit function for a cone
// .SECTION Description
// vlCone computes the implicit function and function gradient for a cone.
// vlCone is a concrete implementation of vlImplicitFunction. The cone vertex
// is located at the origin with axis of rotation coincident with z-axis. (Use
// a transform filter if necessary to reposition). The angle specifies the
// angle between the axis of rotation and the side of the cone.
// .SECTION Caveats
// The cone is infinite in extent. To truncate the cone use the 
// vlImplicitBoolean in combination with clipping planes.

#ifndef __vlCone_h
#define __vlCone_h

#include "ImpFunc.hh"

class vlCone : public vlImplicitFunction
{
public:
  vlCone();
  char *GetClassName() {return "vlCone";};
  void PrintSelf(ostream& os, vlIndent indent);

  // ImplicitFunction interface
  float EvaluateFunction(float x[3]);
  void EvaluateGradient(float x[3], float g[3]);

  // Description:
  // Set/Get the cone angle (expressed in degrees).
  vlSetClampMacro(Angle,float,0,89.0);
  vlGetMacro(Angle,float);

protected:
  float Angle;

};

#endif


{'fraction_non_alphanumeric': 0.1797353985156502, 'fraction_numerical': 0.008389803162310423, 'mean_word_length': 4.317324185248713, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6765077', 'n_tokens_mistral': 907, 'n_tokens_neox': 867, 'n_words': 332}