小编Cug*_*uga的帖子

如何在Java 3d场景上绘制2d叠加层?

我有一个用Java 3d编写的场景,其中用户的查看位置使用以下代码设置为某个坐标:

ViewingPlatform vp = simpleUniverse.getViewingPlatform();
TransformGroup steerTG = vp.getViewPlatformTransform();

Transform3D t3d = new Transform3D();
steerTG.getTransform(t3d);

t3d.lookAt(
        new Point3d(-5, 10, 25), new Point3d(0, 0, 0), new Vector3d(0, 1, 0));
t3d.invert();

steerTG.setTransform(t3d);
Run Code Online (Sandbox Code Playgroud)

现在我需要在总是可见的场景顶部放置一个叠加层,例如一些文本.我试过以下,但无济于事:

PlatformGeometry pg = new PlatformGeometry();
Text2D text = new Text2D("Text to display", Cell.BLACK, "Verdana", 18, 1);
pg.addChild(text);
simpleUniverse.getViewingPlatform().setPlatformGeometry(pg);
Run Code Online (Sandbox Code Playgroud)

当我运行上面的代码时,我根本看不到任何文本.有人可以帮忙吗?

java opengl 3d java-3d

6
推荐指数
1
解决办法
2038
查看次数

如何让GXT网格占用所有可用宽度?

我在GXT中有一个网格,如下所示:

List<ColumnConfig> configs = new ArrayList<ColumnConfig>();
ColumnConfig config = new ColumnConfig();
config.setId("type");
config.setHeader("Type");
config.setWidth(50);
configs.add(config);
config = new ColumnConfig();
config.setId("text");
config.setHeader("Info");
config.setWidth(75);
configs.add(config);

columnModel = new ColumnModel(configs);
listStore = new ListStore<DtoModel>();

grid = new Grid<DtoModel>(listStore, columnModel);
grid.setAutoHeight(true);
grid.setAutoWidth(true);

VerticalPanel verticalPanel = new VerticalPanel();
verticalPanel.setLayout(new FillLayout());
verticalPanel.add(grid);
Run Code Online (Sandbox Code Playgroud)

这样就可以创建网格,只有一个例外 - 宽度限制为列宽的总和.当我放弃列宽时,网格最终有0宽度.

有没有办法让这个网格及其列扩展以填充可用的整个区域?

编辑:困难之一是该ColumnConfig.setWidth()方法只接受int一个参数,所以我不能将"100%"指定为字符串或类似的东西.

grid gwt gxt

6
推荐指数
2
解决办法
1万
查看次数

如何使用Java lambda来收集新类型列表中的元素?

我一直在努力阅读javadocs,以确定如何使用lambdas优雅地将一种类型的行列表组合成另一种类型的分组列表.

我已经弄清楚如何使用Collectors.groupingBy语法来获取数据,Map<String, List<String>>但是因为结果将用于各种后来的函数调用...我理想地希望将这些缩减为包含以下内容的对象列表新的映射.

这是我的数据类型,RowData是源...我想将数据合并到一个列表中CodesToBrands:

class RowData {
    private String id;
    private String name;

    public RowData() {

    }

    public RowData(String id, String name) {
        this.id = id;
        this.name = name;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

class CodeToBrands {
    private String code;
    private List<String> brands …
Run Code Online (Sandbox Code Playgroud)

java lambda java-8 java-stream collectors

6
推荐指数
1
解决办法
141
查看次数

如何将webapp打包为可部署的战争?

我是Maven的新手,但我迷上了它所提供的东西.如何使用webapp并让Maven将webapp打包为可部署的WAR?另外,我可以设置Maven来自动对版本进行版本化吗?

java deployment maven-2 web-applications war

5
推荐指数
1
解决办法
3582
查看次数

如何在Tomcat中部署Spring Integration应用程序?

我已经完成了" 10分钟内的Spring集成 "教程,用于设置基本的Spring Integration应用程序.我想在Tomcat中部署这个应用程序并在服务器上实现输入通道并将输出发送回客户端,但我很难找到任何这样的例子.

任何人都可以向我提供一些教程的链接,如何做到这一点或任何其他类型的指导?非常感谢所有帮助!

spring tomcat web-applications spring-integration

5
推荐指数
1
解决办法
7558
查看次数

如何读取给卸载程序的命令行参数?

使用NSIS,如何读取提供给卸载程序的(可选)命令行参数?

我不需要按名称阅读它 - 只需阅读给定的第一个参数就足够了.

installer nsis uninstallation

5
推荐指数
2
解决办法
4719
查看次数

如何在Ext GWT(GXT)中强制重绘/重新布局?

在GXT中,我有一个控件,底部组件添加了一个重要的面板,基本上是这样的:

public class SamplePanel extends ContentPanel {

ContentPanel panel = new ContentPanel();    

public SamplePanel() {
    setBottomComponent(panel);
}

public void setVisible(boolean isVisible) {
    panel.setVisible(isVisible);
}
Run Code Online (Sandbox Code Playgroud)

该面板被设置为"底部组件",因为它需要保持在窗口小部件的底部并始终可见.

问题是,虽然面板的可见性正确切换,但"底部组件"区域不会调整大小以适应底部区域的新尺寸.

但是,我注意到当我用鼠标手动更改小部件的大小时,底部区域会调整大小.

有没有办法以编程方式强制重绘/重绘/重新布局......任何东西都要更改底部组件以反映其内容的新大小?

我已经尝试了所有这些并且它们不起作用:

public void setVisibility(boolean isVisible) {
        panel.setVisible(isVisible);
        doLayout(true);
        recalculate();
        repaint();
    }
Run Code Online (Sandbox Code Playgroud)

谢谢

gwt gwt-ext gxt

5
推荐指数
1
解决办法
2万
查看次数

如何将Facebook/Twitter/LinkedIn登录添加到Google App Engine项目?

我一直在寻找解决方案,但我能找到的一切似乎都已经过时了.

我们使用Python API for GAE并以下列方式创建登录URL:

users.create_login_url(continue_url, "Yahoo", "http://yahoo.com/"),
Run Code Online (Sandbox Code Playgroud)

哪个适用于Google,Yahoo,Aol,Blogger,Flickr等网站......但我们知道Facebook和Twitter不能以这种方式运作.

任何人都可以展示如何使用Facebook,Twitter和LinkedIn在App Engine上验证用户的任何示例吗?

谢谢!

openid google-app-engine facebook oauth twitter-oauth

5
推荐指数
1
解决办法
2188
查看次数

Java 代码在 AWS 上耗尽了空间内存,但在 MacOSX 上没有

我需要另外一双眼睛看这个。

我已经用这个确切的代码将一个 zip 文件写成数百 GB,在 MacOSX 上没有本地修改。

使用 100% 未更改的代码,只是部署到运行 Ubuntu 的 AWS 实例,同样的代码会遇到内存不足问题(堆空间)。

这是正在运行的代码,将 MyBatis 流式传输到磁盘上的 CSV 文件:

File directory = new File(feedDirectory);
    File file;
    try {
        file = File.createTempFile(("feed-" + providerCode + "-"), ".csv", directory);
    } catch (IOException e) {
        throw new RuntimeException("Unable to create file to write feed to disk: " + e.getMessage(), e);
    }

    String filePath = file.getAbsolutePath();
    log.info(String.format("File name for %s feed is %s", providerCode, filePath));

    // output file
    try (FileOutputStream out = new FileOutputStream(file)) …
Run Code Online (Sandbox Code Playgroud)

java memory memory-leaks heap-memory amazon-web-services

5
推荐指数
1
解决办法
1512
查看次数

我应该使用Tomcat还是完整的Java EE容器?

我需要在现有应用程序之上设计Web服务层.真的,我最感兴趣的是WS-Security和JMS支持,可能是JTA.

什么是最好的服务器用于此?使用轻量级Tomcat(我经验丰富)是否是一个明智的决定,或者我会更好地使用实现完整Java EE堆栈的服务器,例如JBoss AS,WebLogic,甚至GlassFish?

tomcat web-services production-environment java-ee

4
推荐指数
1
解决办法
3797
查看次数