GroupName()

FUNKTION

string GroupName(string grp)

DEFINIERT IN

/p/daemon/materialdb.c (MATERIALDB)

ARGUMENTE

string grp - ein Gruppenname

BESCHREIBUNG

Gibt die Langbeschreibung des Gruppennamens zurueck.

RUECKGABEWERT

Die Gruppenbeschreibung oder "Unbekanntes"

BEISPIELE

// simpel
tmp=m_indices(ob->QueryProp(P_MATERIAL));
write("Dieses Objekt gehoert u.a. zur Gruppe "+
      MATERIALDB->GroupName(MATERIALDB->GetMatMembership(tmp[0])[0])+
      ".\n");
// gibt die erste Gruppenzugehoerigkeit des erste Materials in
// P_MATERIAL zurueck (bei MATGROUP_METAL z.B. "... zur Gruppe Metalle.")

// ein weiser Schmied:
int i;
string *mat, mname, mgroup;
mat=m_indices(ob->QueryProp(P_MATERIAL));
i=sizeof(mat);

write("Der Schmied sagt: "+ob->Name(WER)+" besteht aus ...\n");
while(i--) {
 // den Namen erkennen/aussprechen:
 // Materialien werden allgemein ganz schlecht erkannt (zu 5%), aber
 // alles aus Metall wird zu +100% gut erkannt ...
 mname=MATERIALDB->MaterialName(mat[i], WER,
        ({5, ([MATERIAL_SYMMETRIC_RECOGNIZABILITY:
                   ({MATGROUP_METAL, 100})])}));

 // und nur Metalle analysieren ...
 if(MATERIALDB->MaterialGroup(([mat[i]:100]),MATGROUP_METAL)>=100) {
  int j;
  string *mgr;
  mgr=MATERIALDB->GetMatMembership(mat[i]);
  j=sizeof(mgr);
  mgroup=" gehoert zu ";
  while(j--) {
   mgroup+=MATERIALDB->GroupName(mgr[j]);
   if(j>0) mgroup+=", ";
  }
 } else mgroup=" kenne ich nicht";
 printf("%-12.12s: %s\n",mname, mgroup);
}

SIEHE AUCH

Konzepte:    material, materialerkennung
Grundlegend: P_MATERIAL, /sys/thing/material.h
Master:      AddMaterial(), ConvMaterialList(), MaterialGroup(),
             MaterialName(),
             GetGroupMembers(), GetMatMembership()
  1. Mai 2004 Gloinson