crank storyboard学习笔记(一)环境安装

简介: 如有问题请联系我,微信 814565668.目标:用crank实现仪表盘的动态效果。参考博客:http://blog.csdn.net/guokehello/article/details/51644891他的代码没有验证,这里用的是软件带的sample中的代码。

如有问题请联系我,微信 814565668.

目标:用crank实现仪表盘的动态效果。

参考博客:http://blog.csdn.net/guokehello/article/details/51644891

他的代码没有验证,这里用的是软件带的sample中的代码。应该是差不多一样的。

 

1.环境准备:

1)crank storyboard下载

下载地址:http://www.cranksoftware.com/cranksoftware/v5.1.0/eval/storyboard/Crank_Storyboard_Suite-v5.1.0.exe

30天试用版,需要用手机和邮箱申请。

2)vs2013下载安装

http://download.microsoft.com/download/9/3/E/93EA27FF-DB02-4822-8771-DCA0238957E9/vs2013.5_ult_chs.iso?type=ISO

 

2.软件安装:默认安装即可。

3.运行sample程序。

导入工程

File->Import->Storyboard Sample->storyboard_io,导入就可以了。 
这里写图片描述 
这里写图片描述 
导入后界面显示效果如下,还可以吧,比较绚。下面我们让这个界面动起来。 
这里写图片描述

创建底层数据驱动

Crank Storyboard Suite的特点在于可以方便的开发界面,而且不同平台之间可以方便的移植,底层提供了接口。如果需要换平台的话只需要将底层的数据驱动修改一下就可以运行了。导入的工程里面有如下文件: 
这里写图片描述 
其实这个就是数据驱动的C语言代码了。我这里用的是Visual Studio 2012作为编译环境。新建工程文件,copy以下代码:

 

 

?
/*
  * Copyright 2017, Crank Software Inc. All Rights Reserved.
  *
  * For more information email info@cranksoftware.com.
  */
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <inttypes.h>
#ifdef WIN32
#include <windows.h>
#else
#include <unistd.h> // for usleep
#endif
#include "greio.h"
#define CLUSTER_UPDATE_EVENT "cluster_update"
#define CLUSTER_UPDATE_FMT "2u1 speed 2u1 rpm 2u1 fuel 2u1 battery 2u1 oil 2u1 odometer 2u1 trip"
// Cluster update data structure
typedef struct cluster_update_event {
  uint16_t speed;
  uint16_t rpm;
  uint16_t fuel;
  uint16_t battery;
  uint16_t oil;
  uint16_t odometer;
  uint16_t trip;
} cluster_update_event_t;
/**
  * cross-platform sleep
  */
void
sleep_ms( int milliseconds) {
#ifdef WIN32
  Sleep(milliseconds);
#else
  usleep(milliseconds * 1000);
#endif
}
int
main( int argc, char **argv) {
  gre_io_t                    *send_handle;
     gre_io_serialized_data_t    *nbuffer = NULL;
  cluster_update_event_t   event_data;
  int        ret;
   // Connect to a channel to send messages (write)
  send_handle = gre_io_open( "cluster" , GRE_IO_TYPE_WRONLY);
     if (send_handle == NULL) {
         fprintf (stderr, "Can't open send channel\n" );
         return 0;
  }
  memset (&event_data, 0, sizeof (event_data));
  while (1) {
   // Simulate data acquisition ...
   sleep_ms(80);
   event_data.speed = (event_data.speed + 1) % 200;
   event_data.rpm = (event_data.rpm + 50) % 10000;
   // Serialize the data to a buffer
   nbuffer = gre_io_serialize(nbuffer, NULL, CLUSTER_UPDATE_EVENT, CLUSTER_UPDATE_FMT, &event_data, sizeof (event_data));
   if (!nbuffer) {
          fprintf (stderr, "Can't serialized data to buffer, exiting\n" );
    break ;
   }
   // Send the serialized event buffer
   ret = gre_io_send(send_handle, nbuffer);
   if (ret < 0) {
    fprintf (stderr, "Send failed, exiting\n" );
    break ;
   }
  }
  //Release the buffer memory, close the send handle
  gre_io_free_buffer(nbuffer);
  gre_io_close(send_handle);
  return 0;
}


配置一下VC++目录包含目录、库目录以及连接器里面的附加依赖项。关于如何配置这里不再详述,每个编译环境配置有所不同。

修改模拟配置

注意第2)步代码里面的

send_handle = gre_io_open( "cluster", GRE_IO_TYPE_WRONLY );
  • 1

打开的是cluster通道,需要配置一下Storyboard的simulation configurations使得通道名字一致才可以收到信息,操作如下所示: 
这里写图片描述 
这里写图片描述

运行实例

首先点击Simulate storyboard project打开模拟界面,先运行模拟器,再运行vs2013. 然后即可看到仪表盘的变化。 (如果运行vs2013代码有问题,往本文下看)
这里写图片描述 
这里写图片描述 

 

 问题汇总:

1.这个include "greio.h"头文件会报错

解决办法:在crank安装路径里面搜索这个文件,找到后粘贴到当前的这个工程里面。如下

2.提示缺少lib库。

解决办法:

选择要添加lib库的工程,鼠标右键选择属性,在选项的最下面:

 

在属性页左边菜单栏,有很多选项,选择linker->general:

可以看到右边的选项都发生变化了,其中有一项additional library directories,最后面有个下拉按钮,点击下拉按钮,弹出新页面:

单击黄色文件夹状按钮,可以看到下面多了一行可以编辑的。按钮最后的省略号状按钮:

弹出文件夹选择窗口,选择你需要添加的库所在的目录,点击下面的选择按钮:

比如我的是:C:\Program Files (x86)\Crank_Software\Storyboard_Engine\5.1.201707240438\win32-x86-opengles_2.0-obj\lib

 然后在菜单栏选择linker->input:输入你要引用的lib文件名,注意是全名,要加扩展名的:

这样就可以了。

相关文章
|
3月前
Axure 安装使用 FontAwesome
Axure 安装使用 FontAwesome
130 0
|
3月前
|
数据可视化 API 索引
DOTween教程☀️DOTween的使用教程
DOTween教程☀️DOTween的使用教程
|
持续交付 图形学 开发者
【Unity实战系列】Unity的下载安装以及汉化教程
【Unity实战系列】Unity的下载安装以及汉化教程
347 0
|
搜索推荐
CorelDRAW2023安装下载教程分享
CorelDRAW2023是一款相当专业的图形图像处理软件。giant软件适合制作logo、网站等设计,新版将吸管工具放置在图像上面,会自动显示当前图像的颜色信息值,如果是RGB图像,还会显示出web网页色值,CorelDRAW系列已发布了21个版本,最近推出的CorelDRAW 2023是此系列中的最新版本,完善的新增必备工具、强大的平面设计功能和全新的外观界面为设计师提供了更广阔的创作空间,打开了通往新创意的大门,不管是矢量绘图或版面设计,还是网站制作或位图编辑,这套完整的图形设计软件均可帮助您按照自己的风格随心所欲地进行设计。
482 0
|
编译器 C++
VS2017+Qt5.12环境搭建完美教程分享
VS2017+Qt5.12环境搭建完美教程分享
|
XML C# 数据格式
Wix 安装部署教程(九) --用WPF做安装界面
原文:Wix 安装部署教程(九) --用WPF做安装界面       经常安装PC端的应用,特别是重装系统之后,大致分为两类。一类像QQ,搜狗输入法这样的。分三步走的:第一个页面可以自定义安装路径和软件许可。
1624 0
|
存储 vr&ar Windows
NSIS安装包开发笔记(三):NSIS使用Qt做的安装界面制作安装包交互详解
NSIS安装包开发笔记(三):NSIS使用Qt做的安装界面制作安装包交互详解
NSIS安装包开发笔记(三):NSIS使用Qt做的安装界面制作安装包交互详解
NSIS安装包开发笔记(二):NSIS使用NSIS+Qt界面制作安装包流程
NSIS安装包开发笔记(二):NSIS使用NSIS+Qt界面制作安装包流程
NSIS安装包开发笔记(二):NSIS使用NSIS+Qt界面制作安装包流程
|
C#
Wix 安装部署教程(十) --来,用WPF做个漂亮的安装界面
原文:Wix 安装部署教程(十) --来,用WPF做个漂亮的安装界面        在上一篇中曾留下两个问题,.Net捆绑安装不触发以及路径选择的问题现在都已经解决,这段时间花的最多的地方还是WPF调样式上面,奈何WPF功力不够,暂时还是没有达到自己想要的效果。
1603 0