#include "DisplayNurb.h"
#include "DisplayTexture.h"
#include "DisplayMaterial.h"
#include "DisplayLink.h"
#include "DisplayShape.h"
#include "DisplayCache.h"
#if defined (FBXSDK_ENV_MAC)
#pragma GCC diagnostic ignored "-Wformat-security"
#endif
{
    int i;
    DisplayString(
"Nurb Name: ", (
char *) pNode->
GetName());
 
    DisplayMetaDataConnections(lNurbs);
    const char* lSurfaceModes[] = { "Raw", "Low No Normals", "Low", "High No Normals", "High" };
    DisplayString(
"    Surface Mode: ", lSurfaceModes[lNurbs->
GetSurfaceMode()]);
 
    for (i = 0; i < lControlPointsCount; i++)
    {
        DisplayInt("    Control Point ", i);
        Display3DVector("        Coordinates: ", lControlPoints[i]);
        DisplayDouble("        Weight: ", lControlPoints[i][3]);
    }
    const char* lNurbTypes[] = { "Periodic", "Closed", "Open" };
    DisplayString(
"    Nurb U Type: ", lNurbTypes[lNurbs->
GetNurbsUType()]);
 
    DisplayInt(
"    U Count: ", lNurbs->
GetUCount());
 
    DisplayString(
"    Nurb V Type: ", lNurbTypes[lNurbs->
GetNurbsVType()]);
 
    DisplayInt(
"    V Count: ", lNurbs->
GetVCount());
 
    DisplayInt(
"    U Order: ", lNurbs->
GetUOrder());
 
    DisplayInt(
"    V Order: ", lNurbs->
GetVOrder());
 
    DisplayInt(
"    U Step: ", lNurbs->
GetUStep());
 
    DisplayInt(
"    V Step: ", lNurbs->
GetVStep());
 
    int lUMultiplicityCount = lNurbs->
GetUCount();
 
    int lVMultiplicityCount = lNurbs->
GetVCount();
 
    lString = "    U Knot Vector: ";
    for (i = 0; i < lUKnotCount; i++)
    {
        lString += (float) lUKnotVector[i];
        if (i < lUKnotCount - 1)
        {
            lString += ", ";
        }
    }
    lString += "\n";
    FBXSDK_printf(lString);
    lString = "    V Knot Vector: ";
    for (i = 0; i < lVKnotCount; i++)
    {
        lString += (float) lVKnotVector[i];
        if (i < lVKnotCount - 1)
        {
            lString += ", ";
        }
    }
    lString += "\n";
    FBXSDK_printf(lString);
    lString = "    U Multiplicity Vector: ";
    for (i = 0; i < lUMultiplicityCount; i++)
    {
        lString += lUMultiplicityVector[i];
        if (i < lUMultiplicityCount - 1)
        {
            lString += ", ";
        }
    }
    lString += "\n";
    FBXSDK_printf(lString);
    lString = "    V Multiplicity Vector: ";
    for (i = 0; i < lVMultiplicityCount; i++)
    {
        lString += lVMultiplicityVector[i];
        if (i < lVMultiplicityCount - 1)
        {
            lString += ", ";
        }
    }
    lString += "\n";
    FBXSDK_printf(lString);
    DisplayString("");
    DisplayTexture(lNurbs);
    DisplayMaterial(lNurbs);
    DisplayLink(lNurbs);
    DisplayShape(lNurbs);
    DisplayCache(lNurbs);
}