Subdivision Error



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 29/08/2009 at 08:41, xxxxxxxx wrote:

    User Information:
    Cinema 4D Version:    
    Platform:      
    Language(s) :

    ---------
    Here's the code I am using.
    I am trying to get the MDATA_SUBDIVIDE_SUB to pull the number that is entered in to the NUM_SUBDIVISIONS text box to set the number of subdivisions.

    I keep getting this error.

    subdivisiontool.cpp(80) : error C2664: 'String::StringToLong' : cannot convert parameter 1 from 'String' to 'LONG *'

    Anyone have any thoughts?

    Thanks,

    ~Shawn

    > `

      
    \>    
    \>       LONG amount;  
    \>       String subAmount;  
    \>       subAmount = mdat.bc->GetString(NUM_SUBDIVISIONS);  
    \>       amount = String::StringToLong (subAmount);  
    \>    
    \>       //Determine Attributes  
    \>    
    \>            if (mdat.bc->GetBool(HYPERNURBS_SUBDIVISION, TRUE)) //If HyperNURBS is checked  
    \>            {  
    \>            mdat.bc->SetBool(MDATA_SUBDIVIDE_HYPER, TRUE);  
    \>            }  
    \>            else  
    \>            {  
    \>            mdat.bc->SetBool(MDATA_SUBDIVIDE_HYPER, FALSE);  
    \>            }  
    \>            mdat.bc->SetLong(MDATA_SUBDIVIDE_SUB, subAmount);  
    \>           mdat.bc->SetReal(MDATA_SUBDIVIDE_ANGLE, pi);  
    \>              
    \>       //Subdivision Command  
    \>       SendModelingCommand(MCOMMAND_SUBDIVIDE, mdat);   
    \>    
    \>       return true;  
    \>    
    \>  
    

    `



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 29/08/2009 at 10:22, xxxxxxxx wrote:

    Need more information/code. What is NUM_SUBDIVISIONS defined as in the description resource file (.res)? It would be easier to define it as LONG and then simply get LONG amount = mdat.bc->GetLong(NUM_SUBDIVISIONS).

    I'm not sure why you are getting this value from a ModelingCommandData. Wouldn't it be something entered by the user into the dialog associated with the tool plugin?



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 29/08/2009 at 20:11, xxxxxxxx wrote:

    okay I ended up just using a LONG instead of a string. so that worked well. Now I'd like to set the default value of a LONG field to contain the number of polygons in the object.

    This is the code I am using to set my default values.

    > `

      
    \>  void SubdivisionTool::InitDefaultSettings(BaseDocument *doc, BaseContainer &data;)  
    \>  {       
    \>       //This function sets the default perameters for the Subdivision Options.  
    \>       PolygonObject* objPoly;  
    \>       objPoly=(PolygonObject* )doc;  
    \>    
    \>       DescriptionToolData::InitDefaultSettings(doc,data);  
    \>       data.SetLong(NUM_SUBDIVISIONS, 1);  
    \>       data.SetLong(HYPERNURBS_SUBDIVISION, TRUE);  
    \>       data.SetReal(MAX_ANGLE, 180);  
    \>       data.SetLong(POLYGON_COUNT, objPoly->GetPolygonCount());  
    \>    
    \>    
    \>  }  
    \>    
    \>  
    

    `

    Setting the polygon count is not working..    What am I doing wrong. This learning curve is killing me. LOL



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 29/08/2009 at 21:02, xxxxxxxx wrote:

    Solved it thanks,

    ~Shawn


Log in to reply