Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/blenkernel/intern/curve.c')
-rw-r--r--source/blender/blenkernel/intern/curve.c18
1 files changed, 13 insertions, 5 deletions
diff --git a/source/blender/blenkernel/intern/curve.c b/source/blender/blenkernel/intern/curve.c
index 8a6e8faf29a..358c63b4f9f 100644
--- a/source/blender/blenkernel/intern/curve.c
+++ b/source/blender/blenkernel/intern/curve.c
@@ -169,6 +169,7 @@ Curve *add_curve(const char *name, int type)
cu->texflag= CU_AUTOSPACE;
cu->smallcaps_scale= 0.75f;
cu->twist_mode= CU_TWIST_MINIMUM; // XXX: this one seems to be the best one in most cases, at least for curve deform...
+ cu->type= type;
cu->bb= unit_boundbox();
@@ -303,16 +304,23 @@ ListBase *curve_editnurbs(Curve *cu)
short curve_type(Curve *cu)
{
Nurb *nu;
+ int type= cu->type;
+
if(cu->vfont) {
return OB_FONT;
}
- for (nu= cu->nurb.first; nu; nu= nu->next) {
- if(nu->pntsv>1) {
- return OB_SURF;
+
+ if(!cu->type) {
+ type= OB_CURVE;
+
+ for (nu= cu->nurb.first; nu; nu= nu->next) {
+ if(nu->pntsv>1) {
+ type= OB_SURF;
+ }
}
}
-
- return OB_CURVE;
+
+ return type;
}
void update_curve_dimension(Curve *cu)